Hi, in "old" days before Solid Edge ST it was possible to include an icon bitmap to a Solid Edge macro by adding a resource file to the project. So when adding the macro to a SE toolbar, this icon was used and no dialog appeared to select a bitmap file....
In the new ST times we got an whole new user inteface.
When I now add the macro no bitmap is displayed in the Quick Access Toolbar. I get an emty button. The macros still work fine as in V20.
Has anyone an idea what has happend, perhaps we need a new size of the bitmap? Solid Edge seems to recognize that there is a bitmap, because no dialog appears to select a bitmap.
Hope to get help
Posted by: Juergen Boelter
Post date: 10/2/2008 8:48:55 AM
I run into the same exact issue.
There should be some way to let SolidEdge pick-up the icon from a macro, but so far i have not found any way to do it.
So, the question is, how to properly embed an ICO or BMP resource into a VB.Net project in order to show a custom button image for the .EXE macro ??
I have finally figured out!
This works in ST5.
The icon associated to .EXE in VisualStudio is not properly recognized.
To add an icon for SE, you should manually use "Resource Editor" and add an Icon Resource.
The Icon Resource properties should indicate "Parsistence-->Incorporated in .resx"
Adding macro into QAT, the executable will have it's own icon as expected, most probably loaded from executable resource.
I believe that I can shed some light on what's going on. Solid Edge Addin and Macro functionality was developed before .NET was introduced and hasn't changed much in the way of better supporting .NET executables. .NET executables are "different" than C++ or Visual Basic 6 executables in many ways but particularly regarding embedded resources.
.NET uses .RESX resource files but C++ and Visual Basic 6 use Win32 .RES resource files. In order to get Solid Edge to recognize a different icon for a .NET executable, we must embed a Win32 .RES resource file into our project. Visual Studio does not support this out of the box but the compiler does. The trick is to manually include a .RES resource file into your .NET project and manually edit the project XML in a way that will instruct the compiler to include the Win32 .RES resource file into the build.
I have a attached a .ZIP that contains 1 solution and 2 projects demonstrating how to do this. Below is a screenshot of the form with instructions. Hope this helps.
The simpleton way I've been doing this since they removed the 'select bitmap' dialog is to put the .bmp in the same folder as the .exe, with the exact same filename. This lets SE pull the .bmp as the icon if you've got these macros on a toolbar.