Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

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


Messages recommandés

Posté(e)

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 :

 

// 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 !

Rejoindre la conversation

Vous publiez en tant qu’invité. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...