Il est possible d'inclure le fichier zip dans le dossier "Resources" d'une application applescript, pour cela il faut enrergistrer ton script au format Progiciel (case à cocher dans la fenêtre d'enregistrement) puis faire un clic droit sur l'icône de l'application, choisir l'article de menu "Afficher le contenu du paquet" dans le menu contextuel qui s'affiche.
Une fenêtre au nom de l'application s'ouvre dans laquelle se trouve un dossier intitulé "Contents", ouvre ce dossier et, dans la nouvelle fenêtre, ouvre le dossier "Resources" et dépose l'archive zip à l'intérieur.
Pour que cela fonctionne il faut lancer l'application à partir de l'icône et non plus à partir de l'éditeur de script.
Plus tard il faudra bien sûr enregistrer ton application en lecture seule pour que l'on ne puisse plus l'ouvrir et protéger ainsi ton mot de passe mais seulement lorsque ton appli sera au point (n'oublie pas d'en garder une copie modifiable)
Le code compet :
Edit : remplace le nom de l'archive par le bon à la ligne --####
Une fenêtre au nom de l'application s'ouvre dans laquelle se trouve un dossier intitulé "Contents", ouvre ce dossier et, dans la nouvelle fenêtre, ouvre le dossier "Resources" et dépose l'archive zip à l'intérieur.
Pour que cela fonctionne il faut lancer l'application à partir de l'icône et non plus à partir de l'éditeur de script.
Plus tard il faudra bien sûr enregistrer ton application en lecture seule pour que l'on ne puisse plus l'ouvrir et protéger ainsi ton mot de passe mais seulement lorsque ton appli sera au point (n'oublie pas d'en garder une copie modifiable)
Le code compet :
Bloc de code:
property pathToAppFolder : (path to applications folder) as string
property dossier1 : (pathToAppFolder & "Dossier1:")
property dossier4 : (pathToAppFolder & "Dossier4:")
property pass : "essaiPass"
on run
set thePass to text returned of (display dialog "mot de passe:" default answer "" with hidden answer)
considering case --respect de la casse
if thePass = pass then --si le mot de passe est bon
set theArchive to (path to resource "DossierTest.zip")--####
do shell script "/usr/bin/unzip -u " & (quoted form of POSIX path of theArchive) & " -d " & (quoted form of POSIX path of pathToAppFolder)
--on procède à la duplication
tell application "Finder"
duplicate entire contents of folder (dossier1 as alias) to (dossier4 as alias) replacing yes
end tell
else --sinon
--message d'erreur
beep
display dialog "Mauvais mot de passe"
end if
end considering
end run
Edit : remplace le nom de l'archive par le bon à la ligne --####