Windows XP look in deployed apps

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Windows XP look in deployed apps

Don Rylander-3
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


Reply | Threaded
Open this post in threaded view
|

Re: Windows XP look in deployed apps

Ian Bartholomew-18
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


Reply | Threaded
Open this post in threaded view
|

Re: Windows XP look in deployed apps

Don Rylander-3
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


Reply | Threaded
Open this post in threaded view
|

Re: Windows XP look in deployed apps

Don Rylander-3
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


Reply | Threaded
Open this post in threaded view
|

Re: Windows XP look in deployed apps

Steve Alan Waring
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


Reply | Threaded
Open this post in threaded view
|

Re: Windows XP look in deployed apps

Blair McGlashan
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


Reply | Threaded
Open this post in threaded view
|

Re: Windows XP look in deployed apps

Don Rylander-3
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
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Windows XP look in deployed apps

Don Rylander-3
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
>
>


Reply | Threaded
Open this post in threaded view
|

Re: Windows XP look in deployed apps

Don Rylander-3
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
>
>