|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Member
Iscritto dal: Nov 2004
Messaggi: 115
|
[vb] dov'è l'errore?
Be', credo sia una cosa abbastanza stupida...
ma non riesco a trovare l'errore di questa sub.... la list1 contiene l'elenco di tutti i file e le cartelle del disco: Codice:
Private Sub List1_DblClick() Dim lpatch As String lpatch = (List1.List(List1.ListIndex)) Open (App.Path & "\temp\temp.txt") For Output As #1 If Mid$(Right(lpatch, 3), 1, 1) = "." Then Print #1, lpatch Else Print #1, "explorer.exe " & lpatch End If Close #1 Shell (App.Path & "\temp\temp.bat") End Sub l'errore è nella funzione shell, no? grazie, e scusate se vi ho fatto perdere tempo... |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Nella shell devi togliere le parentesi o meglio ancora fare una cosa del genere:
Codice:
lRet = Shell (App.Path & "\temp\temp.bat") Occhio che con la shell puoi solo lanciare eseguibili! (.exe e .bat)
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Nov 2004
Messaggi: 115
|
Scusate ancora... l'errore è sempre quello...
ecco il codice: Codice:
Private Sub List1_DblClick() Dim lret As Long Dim lpatch As String lpatch = (List1.List(List1.ListIndex)) Open (App.Path & "\temp\temp.txt") For Output As #1 If Mid$(Right(lpatch, 3), 1, 1) = "." Then Print #1, lpatch Else Print #1, "explorer.exe " & lpatch End If Close #1 lret = Shell(App.Path & "\temp\temp.bat", vbHide) End Sub ho fatto di nuovo qualche errore??? |
|
|
|
|
|
#4 |
|
Member
Iscritto dal: Nov 2004
Messaggi: 115
|
ecco, ho risolto accorciando il percorso...
Codice:
Private Sub List1_DblClick() Dim lret As Long Dim lpatch As String lpatch = (List1.List(List1.ListIndex)) Open (App.Path & "\temp.bat") For Output As #1 If Mid$(Right$(List1.List(List1.ListIndex), 4), 1, 1) = "." Then Print #1, lpatch Else Print #1, "explorer.exe " & lpatch End If Close #1 lret = Shell(App.Path & "\temp.bat", vbHide) End Sub grazie!!! poi quel txt mi sono scordato di toglierlo... ma se con la shell si possono eseguire solo eseguibili, come si fa per aprire gli altri file senza fare tutto quel casino (si fà per dire) che ho fatto io? Ultima modifica di mslv : 02-02-2005 alle 17:15. |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Aug 2002
Città: Biella
Messaggi: 1882
|
Cmq le parentesi erano un errore!
In quel percorso c'era una cartella Temp, la cartelle deve esistere prima di creare dentro un file.
__________________
"Analizzando e valutando ogni giorno tutte le idee, ho capito che spesso tutti sono convinti che una cosa sia impossibile, finchè arriva uno sprovveduto che non lo sa e la realizza!" A. Einstein |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 00:03.



















