Re: Py2exe - é possibile avere un unico
|
- Subject: Re: Py2exe - é possibile avere un unico
- From: Simone
- Data: Tue, 08 Jul 2008 17:04:56 +0200
- Newsgroups: it.comp.lang.python
news.tin.it ha scritto:
> Ti sarei grato se mi giri lo script o quì oppure su
> pumidruCHIOCCIOLAyahoo.it
Io, sinceramente, essendo mooolto grato a tutta la comunità, ma
soprattutto avendolo io copiato letteralmente da chi la reso pubblico,
te lo allego... :)
Non serve spiegarti niente, perché ho già scritto che cosa ci va e dove.
(non riesco a passarlo come allegato, per cui scusate il volume del
messaggio... che continua anche sotto! :D ). Poi si tratta di provare
per vedere l'effetto che fa.
--------------8<------------------8<----------------------
;--------------------------------
;Include Modern UI
!include "MUI.nsh"
;--------------------------------
;General
;Name and file
Name "Nome programma"
OutFile "Nome eseguibile principale.exe"
;Default installation folder
InstallDir "$PROGRAMFILES\DirectoryDiProgrammi"
;Get installation folder from registry if available
InstallDirRegKey HKCU "Software\DirectoryDelRegistro" ""
;--------------------------------
;Interface Settings
!define MUI_ABORTWARNING
;--------------------------------
;Pages
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_COMPONENTS
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_UNPAGE_WELCOME
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH
;--------------------------------
;Languages
!insertmacro MUI_LANGUAGE "Italian"
;--------------------------------
;Installer Sections
Section "Nome programma" SecDummy
SetOutPath "$INSTDIR"
File ".\dist\*.*"
;Store installation folder
WriteRegStr HKCU "Software\DirectoryDiRegistro" "" $INSTDIR
;Create uninstaller
WriteUninstaller "$INSTDIR\Uninstall.exe"
CreateShortCut "$INSTDIR\LinkSulDesktop.lnk" "$INSTDIR\Nome del
programma eseguibile.exe"
SetOutPath "$SMPROGRAMS\NomeCheAppareNelMenuAvvio\"
CopyFiles "$INSTDIR\NomeDelLinkSulMenuAvvio.lnk"
"$SMPROGRAMS\Directory di installazione\"
CopyFiles "$INSTDIR\NomeDelLinkSulDesktop.lnk" "$DESKTOP\"
Delete "$INSTDIR\NomeDelLinkSulDesktop.lnk"
CreateShortCut "$SMPROGRAMS\NomeCheAppareSulMenuAvvio\Uninstall.lnk"
"$INSTDIR\Uninstall.exe"
SectionEnd
;--------------------------------
;Descriptions
;Language strings
LangString DESC_SecDummy ${LANG_ITALIAN} "Nome del programma che
appare sul setup"
;Assign language strings to sections
!insertmacro MUI_FUNCTION_DESCRIPTION_BEGIN
!insertmacro MUI_DESCRIPTION_TEXT ${SecDummy} $(DESC_SecDummy)
!insertmacro MUI_FUNCTION_DESCRIPTION_END
;--------------------------------
;Uninstaller Section
Section "Uninstall"
Delete "$INSTDIR\*.*"
Delete "$DESKTOP\NomeDelCollegamentoSulDesktop.lnk"
Delete "$SMPROGRAMS\Directory di programma\LinkSulMenuAvvio.lnk"
RMDir "$SMPROGRAMS\Directory di programma\"
RMDir /r "$INSTDIR\etc\"
RMDir /r "$INSTDIR\lib\"
RMDir /r "$INSTDIR\share\"
RMDir "$INSTDIR"
DeleteRegKey /ifempty HKCU "Software\DirectoryDiRegistro"
SectionEnd
------8<------------------8<--------------8<-----------
> P.S. il mio progetto come hai potove derere è il C.F. multi ambiente ma
> non ho
> capito come ricavare la path dell'eseguibile multi ambiente in modo tale da
> avere path+database quale funzione debbo utilizzare?
Di solito (poi dipende dalle esigenze), io metto il percorso del db come
"./nome_del_db" che prende il percorso nel quale viene lanciato lo
script principale del programma.
Oppure, puoi sempre generare un'interfaccia che ti permetta di
selezionare il db e memorizzare il tutto su un file di testo di
preferenze o, come ho fatto ad esempio io, più per prova che per altro,
in un file leggibile/scrivibile via pickle (modulo standard di Python
che però con py2exe litiga un pochino).
> P.S. 2
> Voglio scrivere all'interno di una JPG i dati del codice fiscale quale
> libreria.
Passo... non sono molto ferrato con le immagini. L'unica cosa che so è
che potresti vedere con il modulo PIL (Python Image Library).
> P.S.3
> Non credeve che pyton fosse così semplice, all'inizio con capivo come si
> annidavano le istruzioni e come si creavano all'interno di una if tante
> istruzioni
> ma adesso devo dire che è fantastico.
Benvenuto... tutti iniziano con piccole cose e poi ci si vorrebbe anche
farci il caffè... Il punto è che, volendo, il caffè riesci anche a
farglielo fare... :D
--
Simone