Pyo | Salut à tous,
J'ai un truc qui m'énerve depuis 2h, je viens donc appeler à l'aide ! Dans mon script, je vais rechercher sur la disquette (A si le fichier license est là.
Si il y est, je copie ce fichier dans le répertoire d'installation du programme (répertoire choisi par l'utilisateur précédemment)
Or mon problème est que mon script copie mon fichier dans le dossier contenant l'installateur (Setup.exe) ><
Voici la partie de code qui copie mon fichier :
Code :
- // Copier le fichier tee_pso.lic
- CopyPasswordFile:
- bPasswdInstall = FALSE ;
- retBox = AskYesNo("Do you want to install the license file ?", YES) ;
- if (retBox) then
- szSrcDir = SRCDIR ;
- strResult = "A:\\" ;
- if (GetSystemInfo(DRIVE, nvResult, strResult)=0) then
- if (nvResult=IS_REMOVABLE) then
- szMsg = "Put the 'Password' floppy disk in drive A:\n and click on the 'Ok' button" ;
- MessageBox(szMsg, INFORMATION) ;
- TARGETDIR = svMainDirectory ;
- SRCDIR = "A:\\" ;
-
- // Chercher le 'ComputerName'
- RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE) ;
- szRegKey = "SYSTEM\\CurrentControlSet\\Control\\ComputerName\\ComputerName" ;
- szName = "ComputerName" ;
- RegDBGetKeyValueEx(szRegKey, szName, nvType, svValue, nvSize) ;
-
- // Construire le nom du fichier de licence
- passwordfilename = "tee_pso_" + svValue + ".lic" ;
- fullpasswordfilename = SRCDIR ^ passwordfilename ;
-
- #ifdef DEBUG
- szMsg = "Fichier de licence recherché : " + passwordfilename + "\n\n" ;
- MessageBox(szMsg, INFORMATION) ;
- #endif
-
- if (GetFileInfo(fullpasswordfilename, FILE_SIZE, nvResult, szResult)<0) then
- szMsg = "Can't find '" + passwordfilename + "' on floppy disk\n\n" ;
- szMsg = szMsg + " -> You will have to copy it manually\n\n" ;
- MessageBox(szMsg, WARNING) ;
- goto DisplayEndMessage ;
- else
-
- // svLicenseDirectory = "C:\Program Files\TEE_PSO\Flexlm\tee_pso.lic";
- retBox = CopyFile(passwordfilename, "tee_pso.lic" );
- if (retBox<0) then
- szMsg = "Unable to copy '" + fullpasswordfilename + "' to " + TARGETDIR ;
- #ifdef DEBUG
- NumToStr(szTemp, retBox) ;
- szMsg = szMsg + " Code d'erreur " + szTemp + " \n\n" ;
- #endif
- MessageBox(szMsg, SEVERE) ;
- abort ;
- endif ;
- bPasswdInstall = TRUE ;
- endif ;
- endif ;
- endif ;
- SRCDIR = szSrcDir ;
- endif;
- DisplayEndMessage:
- // If shared files could not be installed, then users must restart system.
- if (BATCH_INSTALL) then
- szMsg = "Some files could not be installed because they are " +
- "currently in use by other programs in the system. " +
- "To allow for proper operation of the new program you should restart" +
- "your system at this time." ;
- CommitSharedFiles(0) ;
- RebootDialog("Restart Windows", szMsg, SYS_BOOTMACHINE) ;
- else
- szMsg = "Setup is complete.\n\n\n" ;
- // Message pour Windows NT
- if (!bPasswdInstall) then
- svMainDirectory = TARGETDIR;
- szMsg = szMsg + "Don't forget to copy the license file tee_pso.lic\n" ;
- szMsg = szMsg + " to the FLEXlm directory '" + svMainDirectory + "'\n\n" ;
- endif ;
- endif ;
- MessageBeep(0) ;
- MessageBox(szMsg, INFORMATION) ;
|
Je signale que j'utilise InstallShield Professional X mais ce code n'a aucune fonction récente.
Je vous remercie d'avance pour votre aide ! |