Technical Anshu
Tutorials Blog
Icon and Version Info

Add a Custom Icon and Version Details to a Converted EXE

The difference between an anonymous file users fear and a tool users pin to the desktop is about two minutes of finish work: a proper icon and filled-in version details. It also quietly helps with antivirus trust and makes every future support call shorter.

By Technical AnshuWindows 10 / 115 minute read
Watch the video to see these fields being set during the conversion

You would not hand someone a medicine bottle with no label. Yet most converted tools ship exactly like that - default icon, empty properties, no version. The five PS2EXE fields on this page are the label. They cost one longer command line at build time and pay you back every time the file is looked at, scanned, pinned, or argued about on a support call.

File Properties - Details tab of a finished build
File descriptionDisk Cleanup Tool
Product nameOffice Toolkit
CompanyTechnical Anshu
File version1.2.0
CopyrightIT Department
What a user or an antivirus sees when they inspect your file. Blank fields are a choice too - a bad one. Values shown are examples.
1

Why an Icon Is Not Decoration

An EXE with the generic default icon looks like every unknown file a user has been warned about. An EXE with a clear icon of its own looks like a tool. Users pin it to the desktop, recognise it in a folder of forty files, and - just as valuable - describe it accurately on the phone when something goes wrong: "the blue broom one" beats a file path nobody can pronounce.

The icon must be a real Windows icon file, .ico. A renamed PNG will not work. A good .ico carries several sizes inside it, so it stays sharp on the desktop and in a small list view; any icon editor, including free ones, can export that format from a simple image.

2

The Version Fields and What Each One Buys You

  1. -title and -description - the name and explanation a human reads in tooltips and the Details tab
  2. -product and -company - the family the tool belongs to and who stands behind it; these two lines do quiet trust work with antivirus reputation systems too
  3. -version - the build number, the single most useful support field you will ever add
  4. -copyright - optional, but its presence is another small signal of a finished, owned tool

Together they are one conversion line: Invoke-PS2EXE -inputFile ".\Cleanup.ps1" -outputFile ".\Cleanup.exe" -iconFile ".\cleanup.ico" -title "Disk Cleanup Tool" -product "Office Toolkit" -company "Technical Anshu" -version "1.2.0".

3

The Version Number Is a Support Tool

Number your builds simply - 1.0, 1.1, 1.2, or year-based if you prefer - but bump the number every single time the script changes, and rebuild. The payoff arrives on the first support call: "right-click the file, Properties, Details - read me the file version" instantly tells you whether the user is running your fix or last month's bug. Without it, every stale copy in the wild is indistinguishable from the current one, and you will debug ghosts.

The matching habit: put the same version in the script itself as a comment on line one. Script comment, EXE version and the folder you archive them in should always agree.

4

A Two-Minute Finishing Checklist

  1. Icon is a real multi-size .ico, readable at small size
  2. Title says what the tool does, not what the file is called
  3. Company and product are filled in, spelled the same way on every tool you ship
  4. Version bumped since the last build, and matched in the script comment
  5. You opened Properties on the finished EXE and read the Details tab yourself before sharing it

None of this changes what the tool does. All of it changes whether people trust it, find it, and can be helped with it - which, for a tool built for other people, is most of the job.

Watch the Complete Process in the Video

Watch the video to see the icon and details applied during conversion and checked in Properties afterwards.

Watch Full Video
Frequently Asked Questions

Can I use a PNG or JPG image as the icon?

Not directly - Windows program icons must be .ico files. Convert your image with any icon editor (free ones exist) and ask for a multi-size ICO containing at least 16, 32 and 48 pixel versions, so it looks right in list views and on the desktop. Then pass that file to -iconFile.

What version number should my first build use?

Start at 1.0 and keep it simple: raise the last number for small fixes, the first for big changes. The exact scheme matters far less than the discipline - every rebuild after a script change gets a new number, and the same number sits in a comment at the top of the .ps1.

Do the company and product fields really affect antivirus warnings?

They do not override detection, but they remove the anonymity that heuristic systems distrust, and they let reputation attach to an identifiable publisher's files. Combined with signing and consistent distribution they are part of the honest fix - not a trick, just a finished, owned file.

This guide is based on the Technical Anshu PowerShell to EXE video - Stuck on any step? Ask in the video comments and you will get a reply there.