Newsgroup: it.comp.appl.access
Titolo: File vbs per copiare file e lanciare access

Ciao a tutti, vorrei attraverso questo script copiare l'ulitma
versione del front end da una risorsa di rete, copiarlo in locale,
attendere qualche secondo e lanciare il file.
Sembra che non dia errori ma il file non lo copia.
Ho cercato nella guida msdn di vbscript ma non trovo l'errore. Dove
sbaglio?
'-----
Dim WshShellCopy, oExecCopy
Set WshShellCopy = CreateObject("WScript.Shell")
Set oExecCopy=WshShellCopy.Exec("c:\windows\system32\xcopy.exe s:
\Business Development General\GestGov\GestGov_FE1.mdb c:\ /y")
dim i
i=6000
Wscript.Sleep(i)
WScript.Echo "Ho atteso secondi :" & i/1000
Dim WshShell, oExec
Set WshShell = CreateObject("WScript.Shell")
Set oExec = WshShell.Exec("C:\Programmi\Microsoft Office
\Office11\msaccess.exe C:\GestGov_FE1.mdb")
'---- se serve puoi controllare la chiusura dell'applicazione
Do While oExec.Status = 0
     WScript.Sleep 100
Loop
WScript.Echo "Uscita Applicazione"
'-----

 \Business Development General\GestGov\GestGov_FE1.mdb c:\ /y")
Nel nome file origine c'è uno spazio, puoi risolvere con due
virgolette doppie:
Set oExecCopy=WshShellCopy.Exec("c:\windows\system32\xcopy.exe ""s:
\Business Development General\GestGov\GestGov_FE1.mdb"" c:\ /y")
P.S.: ma perché chiami xcopy.exe invece di usare il metodo CopyFile di
FileSystemObject?
ciao,
Panathos


wrote:

ciao panathos! lo chiamo perchè ne ignoravo l'esistenza.
Sto provando a creare questo piccolo file vbscrip per togliere un
vecchio file batch dos che lanciavo in esecuzione automatica all'avvio
del sistema per caricare l'ultima versione del front end.
In questo modo vorrei che ogni volta che l'utente apre il file apre
comunque l'ultima versione che rilascio nella cartella condivisa.
Intanto grazie, cercherò nella guida la sintassi corretta per
copyfile, se non mi arrangio ... ehm ... ti disturberò!
:-)

 copyfile, se non mi arrangio ... ehm ... ti disturberò!
Nessun disturbo, se posso rispondo volentieri.
ciao,
Panathos


wrote:

Ecco allora ti disturbo.
Non ho trovato nella guida il comando che indichi. La guida è msdn
sezione vbscript.
Comunque ho notato un paio di problemini ...
1) il diverso percorso del file eseguibile di access ... e li dovrei
intercettare la versione e condizionare il percorso.
2) il percorso del file xcopy.exe nelle versioni win2k e winxp.
(fortunatamente non abbiamo macchine vista sennò suppongo che sia
ancora diverso.)
Il secondo punto potrei risolverlo se mi indicassi sommariamente la
sintassi cosi non devo riferirmi all'xcopy ...!
Però se tu ritieni più utile usare un file batch io ti ascolto
volentieri!
M..

Ciao Ciroteo
.. mi vengono in mente giusto 2 suggerimenti:
1) xcopy puoi darlo senza percorso perchè genralmente è inserito nella
path (o meglio la system32 è nella path e pertanto ogni comando in
essa è reperbile da ogni location)
2) usare i doppi apici:
Set oExecCopy=WshShellCopy.Exec("xcopy.exe ""s:\Business Development
General\GestGov\GestGov_FE1.mdb"" c:\ /y")
facce sapè :)
ciao
Nick



toh! va chi si rivede!!!
ciao papà ... tutto ok?

 volentieri!
In questo caso probabilmente userei un batch; ma solo perché farei
presto a scriverlo ed i comandi necessari li metterei comunque sul
pc.
Poi non è affatto detto che sia la soluzione ottimale... cmq il batch
è questo:
----------------------------
::: richiede grep.exe per win32 nella directory %systemroot%\system32
set miomdb="C:\GestGov_FE1.mdb"
set nuovopercorso="c:\"
set msg=Errore durante la copia
xcopy /y %miodb% %nuovopercorso% || goto :errore
set acc=HKLM\Software\Microsoft\Windows\CurrentVersion\App Paths
\MSACCESS.EXE
set msg=msaccess.exe non trovato
reg query %acc% | grep -i msaccess.exe || goto :errore
FOR /F "delims=;" %%I IN ('reg query %acc%') DO SET acc="%%I"
set msg=Errore nell'avvio dell'applicazione
start /w %acc% %miomdb% || goto :errore
set msg=Operazione completata
echo msgbox "%msg%" >%tmp%\ok.cmd
start %tmp%\ok.cmd
del /q %tmp%\ok.cmd
goto :esci
:errore
echo msgbox "%msg%" >%tmp%\ok.cmd
start %tmp%\ok.cmd
del /q %tmp%\ok.cmd
exit 1
:esci
exit 0
-------------------
ciao,
Panathos

ciroteo ha scritto:

ehhehe
chi non **** si rivede!! :)
ho finalmente trovato un server nntp che mi permetta di visualizzare il 
NG correttamente e moh provo a toranre un po' più attivo, ora non uso 
molto accesso (purtroppo) ma vedrò cmq di dare una mano alla comunity... 
e poi.. non si finisce mai di imparare :)
... il resto tutto bene, si dorme poco.. ma va cmq tutto bene :)
ti ho visto nella demo del cisa3... relatore?? grande ciroteo!!!
tu tutto bene?
ciao
Nick


wrote:

FIKO!
Grazie me lo studio.
Per il momento visto che l'applicazione è in una piccola lan in cui
lavoro ogni giorno mi basta quello che ho fatto col vbs.
ogni volta che qualcuno lancia il vbs si apre la nuova versione che
viene aggiornata più o meno ogni sera. Trattandosi di pochi utenti
(5-6) va bene cosi al max mi chiamano ...  la nuova assistende della
mia capa è pure carina ...
:-)

 mia capa è pure carina ...
Ci sono scelte che vanno aldilà della tecnica :-)
ciao,
Panathos