Does anyone remember seeing something about deployed apps not having the "XP
look" they have in the development environment? Tabs, dialogs (e.g., ProgressDialog), and so forth revert to the old look once the application is deployed. I thought I'd seen mention of this a few months back, but a search of the archives, etc., didn't turn anything up. TIA, Don |
Don,
> Does anyone remember seeing something about deployed apps not having > the "XP look" they have in the development environment? Tabs, > dialogs (e.g., ProgressDialog), and so forth revert to the old look > once the application is deployed. You need a "manifest" file. If you have a look in the folder that contains the dolphin.exe file you will also find a file called "dolphin.exe.manifset". Put a copy of that file in the same folder as your executable and rename the copied file "yourapp.exe.manifset". Your app should henceforth open with the XP look and feel. The file is just a simple xml text file that you can open in Wordpad (ignore the XP warning about system files :-) ). There are a couple of bits in there (name and description) that you can edit to describe you application but I don't *think* changing them is necessary to make it work - I've just got one manifest file that I copy and rename for all of my executables. -- Ian Bartholomew |
Ian, you are a font of exceedingly useful information. That did the trick.
You don't have to edit the contents of the file after renaming it, but if you do, make sure your editor doesn't add anything to the end (like an EOF or something) like my first one did. That results in a configuration error that looks much more serious than it is. Thanks again, Don |
Just a little update on this: Sadly, you can't just put a RT_MANIFEST
resource into your file, whether in the stub prior to stripping, or directly into the executable after it's built. That means you do have to have the separate manifest file for your application. Also, there doesn't seem to work with a DLL application, at least not with an in-process one. Nevertheless, adding those manifest files makes my pathetic little apps look pretty slick on XP boxes. Don |
Don Rylander wrote:
> Just a little update on this: Sadly, you can't just put a RT_MANIFEST > resource into your file, whether in the stub prior to stripping, or > directly into the executable after it's built. Hi Don, If I am understanding correctly what you are trying to do, I think it is possible. Try using; "Resource Type" = 24, "Resource Name" = 1 and "Resource Language" = 1033. You may need to edit the version string in the manifest to match your version number, but I am not sure if this is necessary. I did this for the ToGo apps at: http://www.dolphinharbor.org/dh/projects/spray/apps/index.html ... and it appeared to work. Hope this helps, Steve -- Steve Waring Email: [hidden email] About: http://www.dolphinharbor.org/dh/harbor/steve.html Journal: http://www.stevewaring.net/blog/home/index.html |
In reply to this post by Don Rylander-3
"Don Rylander" <[hidden email]> wrote in
message news:b0a204$m7l77$[hidden email]... > Just a little update on this: Sadly, you can't just put a RT_MANIFEST > resource into your file, whether in the stub prior to stripping, or directly > into the executable after it's built. That means you do have to have the > separate manifest file for your application. Actually you should be able to do that; Dolphin 6's image stripper writes a manifest resource to the .exe, and it has to have a specific ID, not just be of type RT_MANIFEST. For an executable it should be CREATEPROCESS_MANIFEST_RESOURCE_ID (which is 1)... >... Also, there doesn't seem to > work with a DLL application, at least not with an in-process one. ... and for a DLL ISOLATIONAWARE_MANIFEST_RESOURCE_ID, which is 2. Regards Blair |
In reply to this post by Steve Alan Waring
Steve,
"Steve Waring" <[hidden email]> wrote in message news:b0cia6$o7bga$[hidden email]... > Don Rylander wrote: [...] > Try using; "Resource Type" = 24, "Resource Name" = 1 and "Resource > Language" = 1033. This works beautifully for executable files. I don't know whether it was using 24 instead of RT_MANIFEST, or setting the resource language (which I thought I could just ignore), but adding my manifest file to the to-go stub (with ResHacker) did the trick. > You may need to edit the version string in the manifest to match your > version number, but I am not sure if this is necessary. I didn't change the version string, leaving it the same value as in the Dolphin manifest ("1.0.0.0"), and it was no problem. [...] > > Hope this helps, > Steve As usual, you're a great help, and always appreciated. Thanks, Don > > -- > Steve Waring > Email: [hidden email] > About: http://www.dolphinharbor.org/dh/harbor/steve.html > Journal: http://www.stevewaring.net/blog/home/index.html > > |
In reply to this post by Blair McGlashan
Blair,
"Blair McGlashan" <[hidden email]> wrote in message news:b0efn0$ohsbi$[hidden email]... > [...] > Actually you should be able to do that; Dolphin 6's image stripper writes a > manifest resource to the .exe, and it has to have a specific ID, not just be > of type RT_MANIFEST. For an executable it should be > CREATEPROCESS_MANIFEST_RESOURCE_ID (which is 1)... I did get this to work nicely, although I'm looking forward to what sounds like a simpler process in D6. (Of course, in my experience with Dolphin, every new version has been well worth waiting for!) [...] > ... and for a DLL ISOLATIONAWARE_MANIFEST_RESOURCE_ID, which is 2. I didn't get this to work yet, but more investigation on my part is in order. I'll post another message when I've tried things out more systematically. Thanks, Don > > Regards > > Blair > > |
In reply to this post by Blair McGlashan
Blair,
"Blair McGlashan" <[hidden email]> wrote in message news:b0efn0$ohsbi$[hidden email]... > [...] > >... Also, there doesn't seem to > > work with a DLL application, at least not with an in-process one. > > ... and for a DLL ISOLATIONAWARE_MANIFEST_RESOURCE_ID, which is 2. After working through the various manifest permutations that I found at MSDN, both as resources bound into the DLL and as external files, I cannot get this to work with an in-process DLL (with an implicit emphasis on the "I"). Not too shocking, I suppose. This really falls into the "nice to have" category, but it does make little commercial apps that much more attractive to potential buyers. Could it have something to with the fact that D5 wasn't originally intended to support in-process COM servers with UI components? I notice that when I start my app in the development environment (using MyCOMClass>>register, then starting Outlook, which runs the whole thing in-process), the development environment no longer has the XP style either. TIA, Don > > Regards > > Blair > > |
Free forum by Nabble | Edit this page |