Keresés

Új hozzászólás Aktív témák

  • amargo

    addikt

    Sziasztok volna egy segítség kérésem, mivel a VBS hez halvány lilasegédfogalmam sincs, ezért nem tudom, hogy mit kellene és hogy csinálni, hoyg ezt a függvényt meg tudjam hívni.
    Paraméterként kell neki? Vagy, miként is megy itt? van valami main-e?
    Itt találtam rá: [link]
    De ezt milyen OP rendszeren tudom futtatni?
    ''This function is not supported on Windows 2000 & NT''?

    Function GetPrinterStatus(strComputer, strPrinterDevID)
    'Accepts a computer name and printer device ID as string parameters
    'Returns the printer status as a string
    Dim intStatus: intStatus = 0
    Const wbemFlagReturnImmediately = &h10
    Const wbemFlagForwardOnly = &h20
    On Error Resume Next
    Err.Clear
    Set objWMIService = GetObject(''winmgmts:\\'' & strComputer &
    ''\root\CIMV2'')
    Set colItems = objWMIService.ExecQuery(''SELECT * FROM Win32_Printer
    Where DeviceID = ''' _
    & strPrinterDevID & ''''', ''WQL'', wbemFlagReturnImmediately + _
    wbemFlagForwardOnly)
    If Err.Number = 0 Then
    For Each objItem In colItems
    intStatus = objItem.PrinterStatus
    Next
    Else
    GetPrinterStatus = ''Error Getting Printer Status''
    End If
    Select Case intStatus
    Case 1
    GetPrinterStatus = ''Other''
    Case 2
    GetPrinterStatus = ''Unknown''
    Case 3
    GetPrinterStatus = ''Idle''
    Case 4
    GetPrinterStatus = ''Printing''
    Case 5
    GetPrinterStatus = ''Warmup''
    Case 6
    GetPrinterStatus = ''Stopped Printing''
    Case 7
    GetPrinterStatus = ''Offline''
    Case 0
    GetPrinterStatus = ''Error Getting Printer Status''
    End Select
    End Function

    MsgBox GetExtendedPrinterStatus(''.'',''YourPrinter'')

    Function GetExtendedPrinterStatus(strComputer, strPrinterDevID)
    'Accepts a computer name and printer device ID as string parameters
    'Returns the extended printer status as a string
    'This function is not supported on Windows 2000 & NT
    Dim intStatus: intStatus = 0
    Const wbemFlagReturnImmediately = &h10
    Const wbemFlagForwardOnly = &h20
    On Error Resume Next
    Err.Clear
    Set objWMIService = GetObject(''winmgmts:\\'' & strComputer &
    ''\root\CIMV2'')
    Set colItems = objWMIService.ExecQuery(''SELECT * FROM Win32_Printer
    Where DeviceID = ''' _
    & strPrinterDevID & ''''', ''WQL'', wbemFlagReturnImmediately + _
    wbemFlagForwardOnly)
    If Err.Number = 0 Then
    For Each objItem In colItems
    intStatus = objItem.ExtendedPrinterStatus
    Next
    Else
    GetExtendedPrinterStatus = ''Error Getting Printer Status''
    End If
    Select Case intStatus
    Case 1
    GetExtendedPrinterStatus = ''Other''
    Case 2
    GetExtendedPrinterStatus = ''Unknown''
    Case 3
    GetExtendedPrinterStatus = ''Idle''
    Case 4
    GetExtendedPrinterStatus = ''Printing''
    Case 5
    GetExtendedPrinterStatus = ''Warmup''
    Case 6
    GetExtendedPrinterStatus = ''Stopped Printing''
    Case 7
    GetExtendedPrinterStatus = ''Offline''
    Case 8
    GetExtendedPrinterStatus = ''Paused''
    Case 9
    GetExtendedPrinterStatus = ''Error''
    Case 10
    GetExtendedPrinterStatus = ''Busy''
    Case 11
    GetExtendedPrinterStatus = ''Not Available''
    Case 12
    GetExtendedPrinterStatus = ''Waiting''
    Case 13
    GetExtendedPrinterStatus = ''Processing''
    Case 14
    GetExtendedPrinterStatus = ''Initialization''
    Case 15
    GetExtendedPrinterStatus = ''Power Save''
    Case 16
    GetExtendedPrinterStatus = ''Pending Deletion''
    Case 17
    GetExtendedPrinterStatus = ''I/O Active''
    Case 18
    GetExtendedPrinterStatus = ''Manual Feed''
    Case 0
    GetExtendedPrinterStatus = ''Error Getting Printer Status''
    End Select
    End Function


    A cél az volna, hogy a nyomtató státuszát szeretném lekérdezni, nem nem elég, hogy a nyomtatónak ellett küldve az adat, az kell, hogy a nyomtatóból mikor jött ki az utolsó lap és már nem nyomtatt.
    A többi error az nem érdekelne.
    Köszönöm a segítséget!

    “The workdays are long and the weekend is short? Make a turn! Bike every day, bike to work too!”

Új hozzászólás Aktív témák