codice:
Public Function AggiungiDriverXP()
Dim bBuffer(1000) As Byte
For i = 0 To UBound(bBuffer, 1)
bBuffer(i) = 0
Next i
Dim DrvInfo As DRIVER_INFO_3
With DrvInfo
.cVersion = 1024
.pDriverPath = "C:\gs\Driver\WinXP\PSCRIPT5.DLL"
.pConfigFile = "C:\gs\Driver\WinXP\PS5UI.DLL"
.pHelpFile = "C:\gs\Driver\WinXP\PSCRIPT.HLP"
.pDataFile = "C:\gs\Driver\WinXP\HPCLJ5V2.PPD"
.pDependentFiles = "C:\gs\Driver\WinXP\PSCRIPT.NTF"
.pEnvironment = "Windows NT x86"
.pName = "HP Color LaserJet 5/5M PS"
End With
x = AddPrinterDriver(vbNullChar, 3, DrvInfo)
If x = 0 Then
Select Case Err.LastDllError
Case ERROR_INVALID_PRINTER_NAME
MsgBox "Nome stampante non valido"
Case 2
MsgBox "Impossibile trovare il file"
Case Else
MsgBox Err.LastDllError
End Select
End If
End Function
ho modificato la riga x=AddPrinterDriver con
codice:
x = AddPrinterDriverEx(vbNullChar, 3, DrvInfo,1)
e di conseguenza anche la definizione della funzione:
codice:
Public Declare Function AddPrinterDriverEx Lib "winspool.drv" Alias "AddPrinterDriverExA" (ByVal pName As String, ByVal Level As Long, pDriverInfo As Any, pFlags As Long) As Long
Così facendo x mi restituisce 1 ma non installa i driver.
esiste qualcuno in grado di aiutarmi?