Jump to content

Site link in exe comments


JohnOne
 Share

Recommended Posts

Just wondering how long AutoIt has been adding a URL to this website in the developer metadata comments of compiled scripts, and how to remove it.

Subsystem    Version5.1
LinkerVersion    11.0
ImageVersion    0.0
FileVersionNumber    0.0.0.21
UninitializedDataSize    0
LanguageCode    English (British)
FileFlagsMask    0x0000
CharacterSet    Unicode
InitializedDataSize    635392
MIMEType    application/octet-stream
Subsystem    Windows GUI
FileVersion    0.0.0.21
TimeStamp    2015:03:26 19:48:35+01:00
FileType    Win32 EXE
PEType    PE32
FileDescription    Custom
OSVersion    5.1
FileOS    Win32

 

 

EDIT:

After further testing, it appear the comments are only added if you use Au3 wrapper.

Adding...

#AutoIt3Wrapper_Res_Fileversion=0.0.0.3

...is enough to get the comments added, if you do not use Au3 wrapper at all, they are not present.

https://www.virustotal.com/en/file/48487afe3c0cb60214845447114d52dedf9c728481354c3a3266edbf2f7418b1/analysis/1427503108/

file detail tab.

EDIT2:

Using #pragma directives instead seem to remove the comment.

#pragma compile(FileVersion, 3.7.0.0)

https://www.virustotal.com/en/file/85e61a46f7e3bcf5c07f1a157147a8cc4fcee4bb65133859b265ed369c300d8a/analysis/1427504086/

Edited by JohnOne

AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

Link to comment
Share on other sites

  • Developers

AutoIt3Wrapper will default a list of fileversion fields to the value present in aut2exe.exe (previously the BIN file) in case it needs to update the fileversion section.

This has always been the case, but can be change if desired.

If $INP_Comment = "" Then $INP_Comment = FileGetVersion($AutoItBin, "Comments")
If $INP_Description = "" Then $INP_Description = FileGetVersion($AutoItBin, "FileDescription")
If $INP_Fileversion = "" Then $INP_Fileversion = FileGetVersion($AutoItBin)
If $INP_LegalCopyright = "" Then $INP_LegalCopyright = FileGetVersion($AutoItBin, "LegalCopyright")
If $INP_ProductVersion = "" Then $INP_ProductVersion = FileGetVersion($AutoItBin)

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

 

... it appears the comments are only added if you use Au3 wrapper ... Adding...

 

The "it appears" part seems to leave open other possibilities.  Can someone confirm that the metadata is ONLY added by the wrapper's Fileversion statement?

And beyond that, what identifying metadata does Aut2exe add?

I was not aware how any of this was occurring and will appreciate these clarifications.

 

post-29172-0-15639200-1427728465_thumb.p

Link to comment
Share on other sites

It's also worth noting that without having either wrapper or pragma in the code, the virus detection was 0.

Even though they are false positives anyway.

Edited by JohnOne

AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

Link to comment
Share on other sites

  • Developers

The "it appears" part seems to leave open other possibilities.  Can someone confirm that the metadata is ONLY added by the wrapper's Fileversion statement?

And beyond that, what identifying metadata does Aut2exe add?

I was not aware how any of this was occurring and will appreciate these clarifications.

 

Metadata.PNG

Not sure I understand you question but: AutoIt3Wrapper or AUT2EXE will update the FileVersion information which is located in the Programs PE block.

So enter one of the information items located in FileVersion and this block is replaced.

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

Yes, I plan to test ... but it's nice to know what to be looking for.

So, just one more question with respect to where this thread started:

There is a Comment block in the Resources Update section.  Is the following URL a default comment that's inserted if the comment block is blank?

Comments  http: //www.autoitscript.com/autoit3/

Or is the above a boiler plate comment that is always inserted even if there is a separate user comment?

Link to comment
Share on other sites

  • Developers

The 5 listed fields are defaulted to the content of the aut2exe.exe at this moment.

So just check what is in it and you have your answer. ;)

... and these defaults only apply when not specified by an #AutoIT3wrapper directive.

Jos

Edited by Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • Developers

I'm not so sure about that, Jos.

If you do not specify #AutoIT3wrapper directives, none of the default fields are applied.

Agree as stated here:

So enter one of the information items located in FileVersion and this block is replaced.

 

..  which is the assumption being the case in the first place. :)

Jos

Edited by Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

So, in If-Then_Else terms, it's:

IF any of the 5 displayed items are entered THEN the whole block is replaced

     In that replacement instance, IF any of the 5 is blank ... THEN the corresponding value from Aut2Exe's PE block is used.

ELSE the block is left alone and no "Au3 parameters" are inserted in the EXE

[EndIfs]

Correct?

Link to comment
Share on other sites

  • Developers

Close: If any of the fields in the RTVersion block is specified by a #AutoIt3Wrapper_ directive the whole bock is replaced.

Those 5 mentioned fields will default as specified in case they are not set by a #AutoIt3Wrapper_ directive.

these are the directives that will trigger the FileVersion block update:

#AutoIt3Wrapper_Res_Comment=                    ;Comment field
#AutoIt3Wrapper_Res_Description=                ;Description field
#AutoIt3Wrapper_Res_Fileversion=                ;File Version
#AutoIt3Wrapper_Res_FileVersion_AutoIncrement=  ;(Y/N/P) AutoIncrement FileVersion. Default=N
#AutoIt3Wrapper_Res_Fileversion_First_Increment=;(Y/N) AutoIncrement Y=Before; N=After compile. Default=N
#AutoIt3Wrapper_Res_ProductVersion=         ;Product Version
#AutoIt3Wrapper_Res_Language=                   ;Resource Language code . Default 2057=English (United Kingdom)
#AutoIt3Wrapper_Res_LegalCopyright=             ;Copyright field
#AutoIt3Wrapper_Res_Field=                      ;Free format fieldname|fieldvalue

Jos

Edited by Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

My head is swimming ... but I want to get this down pat:

The only sure way to control the parameters inserted by the compile is EITHER

Don't enter ANY parameter(s) so the block doesn't get replaced (in which case it will be some generic windows block?)

Enter ALL the parameters in order to control the content of each (so that defaults don't come into play)

... is this correct?

Link to comment
Share on other sites

My head is swimming ... but I want to get this down pat:

The only sure way to control the parameters inserted by the compile is EITHER

Don't enter ANY parameter(s) so the block doesn't get replaced (in which case it will be some generic windows block?)

Enter ALL the parameters in order to control the content of each (so that defaults don't come into play)

... is this correct?

In my testing, I found that to be correct.

For example if you do not specify  "#AutoIt3Wrapper_Res_LegalCopyright=name" then Jon's name will be there.

etc..

AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...