Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    Creare un file batch....

    Forse con VB6 in senso lato c'etnra poco...ma devo creare un pacchetto d'installazione del mio software fatto in VB6. Devo (mio malgrado) creare un file .bat che a fine dell'installazione del software (con Cyberinstaller) mi faccia la regsitrazione manuale con regsvr32 di alcune dll necessarie al software....

    solo che è una vita che non faccio un file batch...help!!!


  2. #2
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,752
    io cyberinstaller non lo uso, ma non è che se includi le dll nel pacchetto di installazione poi te le registra?
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  3. #3
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496
    Originariamente inviato da wallrider
    io cyberinstaller non lo uso, ma non è che se includi le dll nel pacchetto di installazione poi te le registra?
    certo che le registra, altrimenti a che serve includerle?

  4. #4
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496
    In ogni caso, devi scrivere nel .bat questo
    codice:
    regsvr32 "nomecomponente.dll" "C:\Windows\System32\"
    pause
    chiaramente cambi a tuo piacere il nome del componente e la directory di installazione.
    pause, invece, ti chiarifica se l'operazione ha avuto successo..

  5. #5
    mi basta scrivere un file txt tutta la roba e poi rinominarlo in .bat?

  6. #6
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496
    Sì, apri il blocco note e salvalo come .bat .
    Saluti

  7. #7
    Consiglio: se vuoi che il tuo installer funzioni su più sistemi operativi (Windows 9x, NT, 2000, XP) e vuoi installare la dll nella directory di sistema devi creare un batch più articolato: infatti la directory delle dll di sistema in Windows 9x è %windir%\system, mentre in NT, 2000 e XP è %windir%\system32; in più in Windows NT e 2000 %windir% è (solitamente) c:\winnt, mentre in XP e 9x è c:\windows. Ho scritto a suo tempo questa procedura batch per registrare una mia dll:
    codice:
    @ECHO OFF
    REM Sostituire nomedll.dll con il nome della dll da registrare. La dll in questione dovrà trovarsi nella stessa cartella del file batch.
    SET dllname=nomedll.dll
    REM Istruzioni per l'utente liberamente eliminabili.
    ECHO Verr… copiato e registrato %dllname%.
    ECHO Per interrompere, premere CTRL+C.
    PAUSE
    REM Deregistra il componente nel caso in cui fosse già registrato (in modo da cautelarsi contro versioni obsolete)
    REGSVR32 %dllname% /U /S
    REM Se esiste la cartella %windir%\SYSTEM32 allora siamo sotto Windows NT...
    IF EXIST %WINDIR%\SYSTEM32 GOTO VWINNT
    REM ...se invece esiste solo %WINDIR%\SYSTEM allora siamo sotto Windows 9x.
    IF EXIST %WINDIR%\SYSTEM GOTO VWIN9X
    :REGISTRA
    REM Registra la dll.
    REGSVR32 %dllname% /S
    GOTO FINE:
    :VWINNT
    REM Copia la dll nel percorso corretto per Windows NT.
    COPY %dllname% %WINDIR%\SYSTEM32
    GOTO REGISTRA
    :VWIN9X
    REM Copia la dll nel percorso corretto per Windows 9x.
    COPY %dllname% %WINDIR%\SYSTEM
    GOTO REGISTRA
    :FINE
    Amaro C++, il gusto pieno dell'undefined behavior.

  8. #8
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496
    Originariamente inviato da MItaly
    Consiglio: se vuoi che il tuo installer funzioni su più sistemi operativi (Windows 9x, NT, 2000, XP) e vuoi installare la dll nella directory di sistema devi creare un batch più articolato: infatti la directory delle dll di sistema in Windows 9x è %windir%\system, mentre in NT, 2000 e XP è %windir%\system32; in più in Windows NT e 2000 %windir% è (solitamente) c:\winnt, mentre in XP e 9x è c:\windows. Ho scritto a suo tempo questa procedura batch per registrare una mia dll:
    codice:
    @ECHO OFF
    REM Sostituire nomedll.dll con il nome della dll da registrare. La dll in questione dovrà trovarsi nella stessa cartella del file batch.
    SET dllname=nomedll.dll
    REM Istruzioni per l'utente liberamente eliminabili.
    ECHO Verr… copiato e registrato %dllname%.
    ECHO Per interrompere, premere CTRL+C.
    PAUSE
    REM Deregistra il componente nel caso in cui fosse già registrato (in modo da cautelarsi contro versioni obsolete)
    REGSVR32 %dllname% /U /S
    REM Se esiste la cartella %windir%\SYSTEM32 allora siamo sotto Windows NT...
    IF EXIST %WINDIR%\SYSTEM32 GOTO VWINNT
    REM ...se invece esiste solo %WINDIR%\SYSTEM allora siamo sotto Windows 9x.
    IF EXIST %WINDIR%\SYSTEM GOTO VWIN9X
    :REGISTRA
    REM Registra la dll.
    REGSVR32 %dllname% /S
    GOTO FINE:
    :VWINNT
    REM Copia la dll nel percorso corretto per Windows NT.
    COPY %dllname% %WINDIR%\SYSTEM32
    GOTO REGISTRA
    :VWIN9X
    REM Copia la dll nel percorso corretto per Windows 9x.
    COPY %dllname% %WINDIR%\SYSTEM
    GOTO REGISTRA
    :FINE
    Anche se OT, io credevo che la dll potesse stare in qualsiasi directory, e che il suo percorso venisse memorizzato nel registro dal comando regsvr32...

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da EngLab
    Anche se OT, io credevo che la dll potesse stare in qualsiasi directory, e che il suo percorso venisse memorizzato nel registro dal comando regsvr32...
    Infatti ... è così.

  10. #10
    Utente di HTML.it L'avatar di EngLab
    Registrato dal
    Jan 2006
    Messaggi
    496
    Originariamente inviato da oregon
    Infatti ... è così.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.