Se connecter / S'enregistrer
Votre question

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

Tags :
  • Programme
  • Logiciels
Dernière réponse : dans Logiciels
8 Août 2007 15:46:18

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 :

  1. // Copier le fichier tee_pso.lic
  2. CopyPasswordFile:
  3. bPasswdInstall = FALSE ;
  4. retBox = AskYesNo("Do you want to install the license file ?", YES) ;
  5. if (retBox) then
  6. szSrcDir = SRCDIR ;
  7. strResult = "A:\\" ;
  8. if (GetSystemInfo(DRIVE, nvResult, strResult)=0) then
  9. if (nvResult=IS_REMOVABLE) then
  10. szMsg = "Put the 'Password' floppy disk in drive A:\n and click on the 'Ok' button" ;
  11. MessageBox(szMsg, INFORMATION) ;
  12. TARGETDIR = svMainDirectory ;
  13. SRCDIR = "A:\\" ;
  14.  
  15. // Chercher le 'ComputerName'
  16. RegDBSetDefaultRoot(HKEY_LOCAL_MACHINE) ;
  17. szRegKey = "SYSTEM\\CurrentControlSet\\Control\\ComputerName\\ComputerName" ;
  18. szName = "ComputerName" ;
  19. RegDBGetKeyValueEx(szRegKey, szName, nvType, svValue, nvSize) ;
  20.  
  21. // Construire le nom du fichier de licence
  22. passwordfilename = "tee_pso_" + svValue + ".lic" ;
  23. fullpasswordfilename = SRCDIR ^ passwordfilename ;
  24.  
  25. #ifdef DEBUG
  26. szMsg = "Fichier de licence recherché : " + passwordfilename + "\n\n" ;
  27. MessageBox(szMsg, INFORMATION) ;
  28. #endif
  29.  
  30. if (GetFileInfo(fullpasswordfilename, FILE_SIZE, nvResult, szResult)<0) then
  31. szMsg = "Can't find '" + passwordfilename + "' on floppy disk\n\n" ;
  32. szMsg = szMsg + " -> You will have to copy it manually\n\n" ;
  33. MessageBox(szMsg, WARNING) ;
  34. goto DisplayEndMessage ;
  35. else
  36.  
  37. // svLicenseDirectory = "C:\Program Files\TEE_PSO\Flexlm\tee_pso.lic";
  38. retBox = CopyFile(passwordfilename, "tee_pso.lic");
  39. if (retBox<0) then
  40. szMsg = "Unable to copy '" + fullpasswordfilename + "' to " + TARGETDIR ;
  41. #ifdef DEBUG
  42. NumToStr(szTemp, retBox) ;
  43. szMsg = szMsg + " Code d'erreur " + szTemp + " \n\n" ;
  44. #endif
  45. MessageBox(szMsg, SEVERE) ;
  46. abort ;
  47. endif ;
  48. bPasswdInstall = TRUE ;
  49. endif ;
  50. endif ;
  51. endif ;
  52. SRCDIR = szSrcDir ;
  53. endif;
  54.  
  55.  
  56. DisplayEndMessage:
  57. // If shared files could not be installed, then users must restart system.
  58. if (BATCH_INSTALL) then
  59. szMsg = "Some files could not be installed because they are " +
  60. "currently in use by other programs in the system. " +
  61. "To allow for proper operation of the new program you should restart" +
  62. "your system at this time." ;
  63. CommitSharedFiles(0) ;
  64. RebootDialog("Restart Windows", szMsg, SYS_BOOTMACHINE) ;
  65. else
  66. szMsg = "Setup is complete.\n\n\n" ;
  67.  
  68. // Message pour Windows NT
  69. if (!bPasswdInstall) then
  70. svMainDirectory = TARGETDIR;
  71. szMsg = szMsg + "Don't forget to copy the license file tee_pso.lic\n" ;
  72. szMsg = szMsg + " to the FLEXlm directory '" + svMainDirectory + "'\n\n" ;
  73. endif ;
  74. endif ;
  75.  
  76. MessageBeep(0) ;
  77. 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 !

Autres pages sur : installshield fichier copie bon endroit

8 Août 2007 15:54:10

tu n'es pas dans la bonne section, poste dans "programmation" tu aura plus de reponses ;) 
8 Août 2007 16:24:21

Oui tu as raison.

Je vais reposter :) 
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS