Solved

Exe file description

Posted on 2004-10-29
539 Views
Last Modified: 2012-05-05
Hi,

Is there any way to change EXE file description ? Something like Windows API maybe ?
When you right click an exe file and display the properties, you will read its description.

Thanks
0
Question by:muis2002
    16 Comments
     
    LVL 31

    Expert Comment

    by:moorhouselondon
    It is, of course, unethical to change the Copyright description on an EXE not built by yourself.  

    However, if you were writing a program in Delphi, the information can be embedded by opening your project, choosing the Project menu and choosing Options, Version Info.
    0
     

    Author Comment

    by:muis2002
    So, there is no way to change it ?
    0
     
    LVL 31

    Expert Comment

    by:moorhouselondon
    Yes, within Delphi, the Version Info tab has got all sorts of parameters that can be changed, Copyright message, Build No. etc., and this appears on the properties of the resulting exe - just compile the project with the parameters you set up.
    0
     
    LVL 5

    Expert Comment

    by:paulb1989
    You may be able to edit the version information resource of the EXE using the madRes unit of the madBasic package from Madshi.

    Information about the unit is here:

    http://help.madshi.net/madResUnit.htm
    0
     
    LVL 17

    Expert Comment

    by:Wim ten Brink
    FIRST EXPLAIN WHY you want to change this information. It seems to me you're trying to get rid of someone else's version information and modifying other people's binary applications is illegal without their consent. We can only help you if you have a LEGAL reason to do this.
    0
     
    LVL 5

    Expert Comment

    by:paulb1989
    Sorry if I shouldnt have replied with that link.

    I've got software (a multimedia authoring tool) in which I have to change version information of an exe that I generate, so thats my reason.
    0
     

    Author Comment

    by:muis2002
    Duh. And why do you judge me like that ? :(

    I do know madshi, and I will try.

    Here is the situation :

    (1) I made a multimedia software that can produce an EXE file to display the photo album.

    (2) I put an information in the exe file so that people know that it was made using my software.

    (3) Several users bought my software, and they want to SELL the EXE file. But they do not want the EXE file description like that. They dont want their customer know that the EXE file was created using my software.

    So, there are several options :

    (A) I modify my software and change the description of the EXE generator to be more GENERIC one.

    (B) Provide a way so that the user can SET their own description.

    (C) Create a simple utility to change EXISTING EXE file.

    However, I dont like solution A and B. Why ? Because as the developer of the multimedia software I do want to promote my software. To get more exposure. And ... not so much user wants to change the EXE description (not event 0.001%).

    So, I came up with the idea with solution C. But I dont know how to do it. I can create the EXE but not changing it.

    That's my reason.

    If you dont want to share your knowledge, then it is ok with me. Because there is NO obligation to do that.

    But please! Be professional, dont judge me like that. Dont have negative thinking.

    I dont even think a little bit that I can use this to abuse copyright. And WHAT FOR? Changing Word.exe (Microsoft Word) to something else like "This is MY KEWL first hacked software" ???? And then post it to newsgroup???? Come on!

    Sorry, I am quite sensitive with this negative judgement.
    0
     
    LVL 5

    Expert Comment

    by:Hypoviax
    Why don't you provide them with a utility that replaces the existing exe file with a new versioned information one. The other way you would still have to provide them with a utility and so this one could just be a simple program that unzips or extracts (whatever) the new version over the old one.

    Regards,

    Hypoviax
    0
     

    Author Comment

    by:muis2002
    Then I have to maintain 2 versions of my software :(. Creating utility is not such a big thing. But still, I dont know how to correctly use this win api thing.
    0
     
    LVL 5

    Expert Comment

    by:Hypoviax
    Just a suggestion. But it may be easier because i don't think it will be easy changing version info

    Regards,

    Hypoviax
    0
     
    LVL 5

    Expert Comment

    by:Hypoviax
    0
     
    LVL 5

    Expert Comment

    by:Hypoviax
    sorry

    wrong link
    0
     
    LVL 5

    Expert Comment

    by:Hypoviax
    0
     
    LVL 17

    Expert Comment

    by:Wim ten Brink
    Well, you've explained your reason and it's a good reason in my opinion. :-) You won't hear me complain. But it's just that people -in general- might have doubts about your motives so be clear about it, thank you.

    Basically, you have two options. Either have the version information inside a version resource, that the user can replace by using a simple resource editor. (The Resource Workshop from Borland is a golden oldie, but still works great for modifying version resources of existing executables.
    The second description in your executable is the one you set with "Options/Linker/EXE Description" and this text is hard-coded into your executable. This is a PChar that seems to be appended to the end of your executable. It seems to be in there in multiple locations, both as ASCII and Unicode. This value can only be set from the compiler, though.
    There might be some third option, though, which is based upon MS Office. By checking properties, you can add a summary to the executable. However, this might not work as well as expected.

    In your situation, modifying the resource information would be the best option, but unfortunately, MS kept the API's to create a binary resource file hidden for a long time. Furthermore, you have to do more than just create a version resource. You have to remove the old resource information first, then create a new vresource file and link it with your executable again. It's quite a lot of trouble in my opinion. But Madshi's tools should help you with this.

    But hey, if you really want to keep it simple, give your customers the sourcefile of your main project file (The *.dpr) and provide them all other units they need as compiled *.dcu's. (And *.dfm's) This would allow them to compile their own version of your product with the proper Delphi version, allowing them to change the version information into whatever they like. But they won't have access to the sourcecode since they don't have the source of that. If you use a minimum of Delphi's units then they wouldn't even need anything more than the standard edition...

    0
     

    Author Comment

    by:muis2002
    Thanks for all the inputs. But I think I have found a solution :)

    I will inform my customers to download and use a freeware utility called ResHacker :

    http://www.users.on.net/johnson/resourcehacker/

    I just said to my customer that he could use this software to change exe files generated by my product (until I added an option to set their own description).

    Studying this subject (changing exe resource), in my opinion, is not quite worth  because it is quite complicated and there are some utilities can be used for this.

    0
     

    Accepted Solution

    by:
    PAQed with points refunded (75)

    modulo
    Community Support Moderator
    0

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    How to run any project with ease

    Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
    - Combine task lists, docs, spreadsheets, and chat in one
    - View and edit from mobile/offline
    - Cut down on emails

    Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
    Hello everybody This Article will show you how to validate number with TEdit control, What's the TEdit control? TEdit is a standard Windows edit control on a form, it allows to user to write, read and copy/paste single line of text. Usua…
    This video Micro Tutorial is the first in a two-part series that shows how to create and use custom scanning profiles in Nuance's PaperPort 14.5 (http://www.experts-exchange.com/articles/17490/). But the ability to create custom scanning profiles al…
    Migrating to Microsoft Office 365 is becoming increasingly popular for organizations both large and small. If you have made the leap to Microsoft’s cloud platform, you know that you will need to create a corporate email signature for your Office 365…

    846 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    5 Experts available now in Live!

    Get 1:1 Help Now