Comprendre le bitcoin, l'intelligence artificielle, faire un site web... En 3 minutes en vidéo!

[InstallShield] Fichier qui n'est pas copié au bon endroit

Forum informatique > Aide logiciels bureautique & jeux > [InstallShield] Fichier qui n'est pas copié au bon endroit

<<<1>>>

[Page 1 sur 1 - 1 message]
Informations Messages

Pyo

Avatar de Pyo
4 messages
Neurone isolé
Neurone isolé

Lien direct Le 08 Août 2007 à 15h48

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 !

 

Publicité

<<<1>>>

[Page 1 sur 1 - 1 message]

Forum informatique > Aide logiciels bureautique & jeux > [InstallShield] Fichier qui n'est pas copié au bon endroit