Guys, i m new to this Apps PAcking industry. i have a question for yal...

I have an advertised shortcut. How does the advertised shortcut check for keypaths? What i mean to say is, when i double click an advertised shortcut of a broken application, the msiexec service is called and application self-repairs. I dont know how the advertised shortcut make a check for all keypaths? Is there a hidden service that runs that makes a check for these keypaths?
0 Comments   [ + ] Show Comments

Comments

Please log in to comment

Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.

Answers

0
check this site for complete information on self healing
http://johnmcfadyen.spaces.live.com/
Answered 02/07/2010 by: sunny07
Senior Yellow Belt

Please log in to comment
0
The below link gives some additional information
https://www-secure.symantec.com/connect/blogs/advertised-shortcut-info
Answered 02/07/2010 by: AngelD
Red Belt

Please log in to comment
0
having a good foundation is the key
have a look at my pointers

in addition read about the diff b/w advertised and non advertised shortcuts
what is an entry point
read about features / components etc
read about self repair and how it is triggered

you will get lots of info if you google
cheers
Answered 02/07/2010 by: cygan
Fifth Degree Brown Belt

Please log in to comment
0
guys guys guys.. My question is... "When u run an advertised shortcut, who is responsible for checking the keypaths and everything?"
Answered 02/07/2010 by: mitrokin
Senior Yellow Belt

Please log in to comment
0
mitrokin mitrokin mitrokin - stop being lazy. The guys have posted some good links above, but you've obviously not bothered to look at John McFadyen's blog which discusses self-healing: http://johnmcfadyen.spaces.live.com/blog/cns!9DD01136FC094724!123.entry
Answered 02/08/2010 by: captain_planet
Second Degree Brown Belt

Please log in to comment
0
i did check that ....
i read everything.

I tried this following experiment.
I created a msi and an advertised shortcut in it. i installed my app, Disabled msiexec service. Application still works. Now who would be performing the checks for keypaths.. this is my question left unclear even after reading the blogs
Answered 02/08/2010 by: mitrokin
Senior Yellow Belt

Please log in to comment
0
Now who would be performing the checks for keypaths
The short version; it is the Windows Installer service (msiserver).
The Windows Installer resiliency feature (self-healing) cannot check for broken components if the service is disabled meaning; no repair will/can occur. It will still be possible to start the application.
Answered 02/08/2010 by: AngelD
Red Belt

Please log in to comment
0
Angel. You are wrong. If u disable this service.And then u run the advertised shortcut, the application starts (Provided that nothing is broken). If something is broken repair is triggered but since the service is disabled, repair fails. But how does the system come to a decision that repair should be triggered.
Answered 02/08/2010 by: mitrokin
Senior Yellow Belt

Please log in to comment
0
Splitting hairs, rather, aren't we? The result is the same: if the service is disabled, the repa\ir doesn't happen.how does the system come to a decision that repair should be triggered.You answered your own question earlier. If a key path is missing, repair takes place. As for the actual mechanics, a session with ProcMon [have you seen this mentioned here before?] will show you the process. The various registry entries for the product's features and components are read and key paths checked for their presence.
Answered 02/08/2010 by: VBScab
Red Belt

Please log in to comment
0
If u disable this service.And then u run the advertised shortcut, the application starts (Provided that nothing is broken). If something is broken repair is triggered but since the service is disabled, repair fails. But how does the system come to a decision that repair should be triggered.

Well, one thing you should realise is that an advertised shortcut doesn't actually point to the exe that gets started (unlike a normal shortcut), but instead points to one that is stored in C:\Windows\Installer\<Guid>\

if I'm not mistaken this provides a link to a component (GUID) that is the starting point for Windows Installer's search for things that need repairing.

EDIT: and that's only the mechanism for shortcuts, there's similar mechanisms for file associations, dll's. Here the link to the component is provided by something called a Darwin Descriptor ( something to Google [;)] ) embedded into the registration

PJ
Answered 02/08/2010 by: pjgeutjens
Red Belt

Please log in to comment
0
PJ: "if I'm not mistaken this provides a link to a component (GUID) that is the starting point for Windows Installer's search for things that need repairing."

Now my scenario is that all my keypaths are present and msiexec service is disabled. In this scenario the application launches.
NOw since the windows installer service is disabled. who will search for things that need repairing?
Answered 02/08/2010 by: mitrokin
Senior Yellow Belt

Please log in to comment
0
who will search for things that need repairing?Nothing. Unless that falls to you to do it manually! :)

How do you plan to install anything, after the service is disabled?
Answered 02/08/2010 by: VBScab
Red Belt

Please log in to comment
0
NOw since the windows installer service is disabled. who will search for things that need repairing?
It's done by different API calls (provided mostly by advapi32.dll & msi.dll) which isn't dependent on the service.
Answered 02/08/2010 by: AngelD
Red Belt

Please log in to comment
0
Thanks Angel thanks very much.. Thanks all
Answered 02/08/2010 by: mitrokin
Senior Yellow Belt

Please log in to comment
0
If you want to take it further then do a search for "MsiProvideQualifiedComponent".
Answered 02/08/2010 by: AngelD
Red Belt

Please log in to comment
0
ya iread bout this function call before . thanks
Answered 02/08/2010 by: mitrokin
Senior Yellow Belt

Please log in to comment
0
You'll be able to sleep OK tonight now? [;)]
Answered 02/08/2010 by: MSIPackager
Third Degree Black Belt

Please log in to comment
0
I dunno, May be yes.. I tend to get haywire a lot of tymes...
Answered 02/08/2010 by: mitrokin
Senior Yellow Belt

Please log in to comment
Answer this question or Comment on this question for clarity