marcor1
08-10-2008, 12:09
Ho un software fatto con access 2.0 su un server.
I client puntano a z:\cartellacondivisa (che sul server ovviamente sarebbe c:\cartellacondivisa).
Il problema è che ho una subroutine che richiama il percorso di winword nella cartella c:\progra~1\micros~2\office11\ ma alcuni client mi restituiscono problema di percorso (molto probabilmente perchè la ~ tilde in alcuni client indica un percorso errato)
quando faccio il debug infatti mi da l'errore fermandosi alla linea di codice x = Shell("c:\progra~1\micros~2\office11\winword.exe " & filefine, 3) perchè non trova il file anche se è inserito un ELSE subito dopo....come dovrei fare per risolvere? :mc:
la sub completa è:
Sub Richiama (Parametro As String, Secondo As Long, Flag As Integer)
'On Error GoTo RichiamaErrore
Dim Path As String, file As String, x As Integer, Tipo As Integer
Dim filefine As String
Path = DLookup("[Path]", "Procedure", "[Procedura]='" + Parametro + "'")
file = DLookup("[File]", "Procedure", "[Procedura]='" + Parametro + "'")
Tipo = DLookup("[Tipo File]", "Procedure", "[Procedura]='" + Parametro + "'")
If Flag = 1 Then
Path = Path & Mid(Str(Secondo), 2) & "\"
End If
filefine = Path & file
If Tipo = 1 Then
If Len(Dir$("z:\luca\win.txt")) <> 0 Then
x = Shell("c:\progra~1\micros~2\office11\winword.exe " & filefine, 3)
Else
x = Shell("c:\winword\winword.exe " & filefine, 3)
End If
Else
If Len(Dir$("z:\luca\win.txt")) <> 0 Then
x = Shell("c:\progra~1\micros~2\office11\excel.exe " & filefine, 3)
Else
x = Shell("c:\excel\excel.exe " & filefine, 3)
End If
End If
End Sub
I client puntano a z:\cartellacondivisa (che sul server ovviamente sarebbe c:\cartellacondivisa).
Il problema è che ho una subroutine che richiama il percorso di winword nella cartella c:\progra~1\micros~2\office11\ ma alcuni client mi restituiscono problema di percorso (molto probabilmente perchè la ~ tilde in alcuni client indica un percorso errato)
quando faccio il debug infatti mi da l'errore fermandosi alla linea di codice x = Shell("c:\progra~1\micros~2\office11\winword.exe " & filefine, 3) perchè non trova il file anche se è inserito un ELSE subito dopo....come dovrei fare per risolvere? :mc:
la sub completa è:
Sub Richiama (Parametro As String, Secondo As Long, Flag As Integer)
'On Error GoTo RichiamaErrore
Dim Path As String, file As String, x As Integer, Tipo As Integer
Dim filefine As String
Path = DLookup("[Path]", "Procedure", "[Procedura]='" + Parametro + "'")
file = DLookup("[File]", "Procedure", "[Procedura]='" + Parametro + "'")
Tipo = DLookup("[Tipo File]", "Procedure", "[Procedura]='" + Parametro + "'")
If Flag = 1 Then
Path = Path & Mid(Str(Secondo), 2) & "\"
End If
filefine = Path & file
If Tipo = 1 Then
If Len(Dir$("z:\luca\win.txt")) <> 0 Then
x = Shell("c:\progra~1\micros~2\office11\winword.exe " & filefine, 3)
Else
x = Shell("c:\winword\winword.exe " & filefine, 3)
End If
Else
If Len(Dir$("z:\luca\win.txt")) <> 0 Then
x = Shell("c:\progra~1\micros~2\office11\excel.exe " & filefine, 3)
Else
x = Shell("c:\excel\excel.exe " & filefine, 3)
End If
End If
End Sub