Page 1 of 5
Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 2:42 am
by toledo
Microsoft Visual Basic inserts an identifier into the header of each executable it compiles so that anyone who knows where to look can see it was written in Microsoft Visual Basic. Microsoft Visual C++ does the same thing. Does PureBasic also insert an identifier into the header of it's executable when they are compiled?
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 7:32 am
by Nituvious
The only thing I am aware of is when you use PureBasic Constants you can usually find them within the executable by using a hex editor.
Like, #PB_Window_SystemMenu will appear in ASCII.
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 8:56 am
by UserOfPure
Nituvious wrote:Like, #PB_Window_SystemMenu will appear in ASCII.
No it doesn't. Where did you get that idea? None of my executables have it.
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 9:48 am
by c4s
Programs like
Exeinfo PE are able to detect executables that are created by PureBasic (but version number is wrong) through a signature - but I don't know exactly how this works.

Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 10:14 am
by JCV
PB does not insert identifier in exe.
But you can identify it easily if you can see PB_ prefix on some PB functions used.

Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 10:35 am
by Nituvious
UserOfPure wrote:No it doesn't. Where did you get that idea? None of my executables have it.

Yeah.
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 10:59 am
by UserOfPure
Don't "yeah" me. I was referring to what I directly quoted; that which you mentioned, the text: #PB_Window_SystemMenu. :roll: Do a search for that and it's not there. In fact, NO PureBasic constants are there (search for #Red, #PB_Gadget_BackColor, etc) and you'll see. Because you
did say (bold mine):
Nituvious wrote:The only thing I am aware of is when you use PureBasic Constants you can usually find them within the executable by using a hex editor.
What say ye now?
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 11:52 am
by Trond
Nituvious wrote:UserOfPure wrote:No it doesn't. Where did you get that idea? None of my executables have it.

Yeah.
Those are not constants, they are functions. :roll:
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 11:55 am
by UserOfPure
Exactly my point. Thank you.
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 1:04 pm
by Nituvious
I pulled an all nighter, you have to excuse my mistakes. That was what the "Yeah." was about. I was acknowledging my own mishap.

Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 1:18 pm
by UserOfPure
I thought the "yeah" was "yeah, you're wrong". No problem. It's cool. These things happen.
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 2:48 pm
by greyhoundcode
UserOfPure, Nituvious, shall we have a group hug?
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 2:50 pm
by freak
Trond wrote:Nituvious wrote:UserOfPure wrote:No it doesn't. Where did you get that idea? None of my executables have it.

Yeah.
Those are not constants, they are functions. :roll:
Nope, they are window property names
PB does not insert any signature for identification. But there is no attempt to hide the fact that the program is written in PB either, so it should be easy to detect trough strings like these which are prefixed with "PB_" to avoid any conflicts.
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 4:52 pm
by c4s
freak wrote:PB does not insert any signature for identification.
Do you know how these signature scan tools work? Why does for example "exeinfo PE" (see my post above) know that an application was build using PureBasic, C++, etc.
Re: Does PureBasic insert an identifier in your executables?
Posted: Sat Jan 16, 2010 6:08 pm
by eesau
ExeInfo probably just scans the executable for PB_* strings.