Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Problems with Post-Setup Executable DCom98.EXE in Setup
Message
De
11/12/1998 17:28:34
Koos Veel
Gamma Research
Aruba
 
 
À
11/12/1998 12:25:34
Information générale
Forum:
Visual FoxPro
Catégorie:
Autre
Divers
Thread ID:
00166630
Message ID:
00166807
Vues:
21
Hello Ed,

>>How can we solve this problem with the post-setup executable?
>
>First, don't make DCOM a part of a Setup Wizard install; it is not appropriate for use with WinNT (installing SP3 or SP4 is the correct action to take with NT) and can cause a reboot to occur. If you want to incorporate DCOM into an install, write the install with another tool that can handle a split install by writing a RunOnce key to restart the install process after DCOM compeltes installing and rebooting.

Well we use the setupwizard of VFP 6.0. Since InstallShield cost to much time to research we decided to keep to VFP 6.0. We decided to just include the DCOM98.EXE file in the setup filelist. So it get's copied to the executable directory of the application.

>
>I'd recommend that your application simply check for the Reigstry Key HKEY_LOCAL_MACHINE\Software\Microsoft\OLE with a registry key value EnableDCOM to determine if DCOM is present; if not, use a Messagebox to display a warning to your user without activating a top-level form or the VFP main window, and then shut down. This will avoid the C0000005 error that most people associate with missing DCOM support; do this before any splash screen has been run.

Hmm well we tried to use the registry class which was supplied with VFP to get the keyvalue but it always returns a code -105 (or something). We tried it like this:

SET CLASSLIB TO registry ADDITIVE
oRegist = CREATEOBJECT('registry')

Test = oRegist.GetKeyValue("Software\Microsoft\OLE\EnableDCOM", "Y")
WAIT WINDOW STR(Test)

How do we call this routine so it DOES work? Because it has to give a return code 0. We checked in REGEDIT and the value of this key is set to "Y". So that shouldn't be a problem.

Because we want to execute the DCOM98.EXE file if the return code isnt't equal to 0. We use RUN /N SETUP\DCOM98.EXE /Q to execute it.

We want to do it as automaticly as possible. So that the user doesn't have to do anything. We make a application with about 100 (or more) customers and we don't want to tell them that they have to execute the DCOM98.EXE file.

Do you have another elegant solution to our problem?

Thanks in advance!

Christian
Using the account of Koos Veel
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform