Ottenere da LotusScript la lista delle stampanti installate in Windows

Con questa funzione si interroga il sistema operativo Windows e si ottiene di ritorno un array con i nomi delle stampanti installate.

 
Function nomiStampanti() As Variant
Dim strPC, strList
Dim StrSpace
Dim pNames() As String
Dim conto As Integer
strPC = "."
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & strPC & "\root\cimv2")
conto = 0
Set prnCol = objWMIService.ExecQuery(|Select * from Win32_Printer|)
Forall prnObj In prnCol
Redim Preserve pNames(conto)
Print prnObj.Name
pNames(conto) = prnObj.Name
conto = conto + 1
End Forall
nomiStampanti = pNames
End Function

ed ecco un esempio di come usarlo:

lista = nomiStampanti()
scelta = Workspace.Prompt( PROMPT_OKCANCELLIST, "Scelta stampante", "Si prega di selezionare una stampante:", , lista )

 

 

0 commenti