Rundll32 Drucker auslesen in einer Datei
Hallo Leute,
ich habe mal eine frage.
Vielleicht kennt sicht einer da besser mit aus.
Mit dem Befehl
rundll32 printui.dll,PrintUIEntry /ge
kann ich ja alle Drucker auslesen ich dich installiert habe.
Kann ich diese ausgelesnen Drucker aus in einer dabei schreiben lassen ?
Weil:
rundll32 printui.dll,PrintUIEntry /ge /a "C:\druckerT.dat"
das geht leider nicht so
Oder hat einer von euch eine bessere Idee wie ich die Drucker von einem bestehenden System auslesen kann.
Weil ich müsste im späteren verlauf die Informationen wieder haben um den Standart drucker zu setzen.
Hat der wer eine Idee von euch ?
LG
Makuro
ich habe mal eine frage.
Vielleicht kennt sicht einer da besser mit aus.
Mit dem Befehl
rundll32 printui.dll,PrintUIEntry /ge
kann ich ja alle Drucker auslesen ich dich installiert habe.
Kann ich diese ausgelesnen Drucker aus in einer dabei schreiben lassen ?
Weil:
rundll32 printui.dll,PrintUIEntry /ge /a "C:\druckerT.dat"
das geht leider nicht so
Oder hat einer von euch eine bessere Idee wie ich die Drucker von einem bestehenden System auslesen kann.
Weil ich müsste im späteren verlauf die Informationen wieder haben um den Standart drucker zu setzen.
Hat der wer eine Idee von euch ?
LG
Makuro
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 167537
Url: https://administrator.de/forum/rundll32-drucker-auslesen-in-einer-datei-167537.html
Ausgedruckt am: 24.12.2024 um 03:12 Uhr
13 Kommentare
Neuester Kommentar
[OT]
Ich wäre dankbar, wenn ich montags eine Massagebox per Knopfdruck ordern könnte....
Grüße
Biber
[/OT]
Zitat von @Makuro:
Wenn ich das eingebe kommt bei mir leider nur eine Massage box, wo alle drucker aufgelistet.
Was heisst hier "leider" ?Wenn ich das eingebe kommt bei mir leider nur eine Massage box, wo alle drucker aufgelistet.
Ich wäre dankbar, wenn ich montags eine Massagebox per Knopfdruck ordern könnte....
Grüße
Biber
[/OT]
Moin,
@Biber
[noch mehr OT]
ich wette, daß der "Knopf" ist rot(haarig) sein müßte!
[/ noch mehr OT]
Gruß J chem
@Biber
[noch mehr OT]
ich wette, daß der "Knopf" ist rot(haarig) sein müßte!
[/ noch mehr OT]
Gruß J chem
Moin,.
Falls du eine andere Sprache beherrscht, könnte man ja evtl. verstehen wo du wolle.
Zitat von @Makuro:
Hab noch mal geschaut man müste die 3 bzw 2 fehle zusammen binden.
Einer eine arnung ?
Hab noch mal geschaut man müste die 3 bzw 2 fehle zusammen binden.
Einer eine arnung ?
- ich hab noch ne Tube Arnika Heilsalbe hier rumfliegen, damit kann Frau Mann massieren.
Falls du eine andere Sprache beherrscht, könnte man ja evtl. verstehen wo du wolle.
[OT]
Das
sind die einzigen Gründe, warum ich auf diesen Beitrag antworte...[/OT]
Wenn ich mir den Gesprächsverlauf so anschaue, verstehe ich nicht mehr, ob es nun darum geht, Drucker auszulesen, standards zu setzen oder diese Auszulesen...
Setzt den Standarddrucker
Schreibt diverse Druckerinfos in eine txt...
Das spuckt der WMI-Creator dazu aus (Falls diverse andere Informationen benötigt werden sollen):
[ÜberOT]
Mit VbScript kannst du auch das o.g. Fenster öffnen, mit Sendkeys den Inhalt markieren, kopieren und in ein Notepad-Fenster einfügen.
Den Inhalt des Fenster kannst du dann in einer txt abspeichern.
Das könnte dann ungefähr so aussehen:
[/ÜberOT]
Das
Wenn ich das eingebe kommt bei mir leider nur eine Massage box, wo alle drucker aufgelistet.
Und vor Allem dasich hab noch ne Tube Arnika Heilsalbe hier rumfliegen, damit kann Frau Mann massieren.
...Ich wäre dankbar, wenn ich montags eine Massagebox per Knopfdruck ordern könnte....
sind die einzigen Gründe, warum ich auf diesen Beitrag antworte...[/OT]
Wenn ich mir den Gesprächsverlauf so anschaue, verstehe ich nicht mehr, ob es nun darum geht, Drucker auszulesen, standards zu setzen oder diese Auszulesen...
Setzt den Standarddrucker
Set net = CreateObject("WScript.Network")
net.SetDefaultPrinter "Genauer Druckername"
Schreibt diverse Druckerinfos in eine txt...
Datei = "C:\datei.txt"
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Ausgabe = FSO.OpenTextFile(Datei, 2, True)
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Printer",,48)
For Each objItem in colItems
Ausgabe.WriteLine "Druckername: " & objItem.Name
Ausgabe.WriteLine "Treibername: " & objItem.DriverName
Ausgabe.WriteLine "Druckprozessor: " & objItem.PrintProcessor
Ausgabe.WriteLine "PortName: " & objItem.PortName
Next
Das spuckt der WMI-Creator dazu aus (Falls diverse andere Informationen benötigt werden sollen):
Availability: objItem.Availability
AveragePagesPerMinute: objItem.AveragePagesPerMinute
Caption: objItem.Caption
Comment: objItem.Comment
ConfigManagerErrorCode: objItem.ConfigManagerErrorCode
ConfigManagerUserConfig: objItem.ConfigManagerUserConfig
CreationClassName: objItem.CreationClassName
CurrentCharSet: objItem.CurrentCharSet
CurrentLanguage: objItem.CurrentLanguage
CurrentMimeType: objItem.CurrentMimeType
CurrentNaturalLanguage: objItem.CurrentNaturalLanguage
CurrentPaperType: objItem.CurrentPaperType
Default: objItem.Default
DefaultCopies: objItem.DefaultCopies
DefaultLanguage: objItem.DefaultLanguage
DefaultMimeType: objItem.DefaultMimeType
DefaultNumberUp: objItem.DefaultNumberUp
DefaultPaperType: objItem.DefaultPaperType
DefaultPriority: objItem.DefaultPriority
Description: objItem.Description
DetectedErrorState: objItem.DetectedErrorState
DeviceID: objItem.DeviceID
Direct: objItem.Direct
DoCompleteFirst: objItem.DoCompleteFirst
DriverName: objItem.DriverName
EnableBIDI: objItem.EnableBIDI
EnableDevQueryPrint: objItem.EnableDevQueryPrint
ErrorCleared: objItem.ErrorCleared
ErrorDescription: objItem.ErrorDescription
ExtendedDetectedErrorState: objItem.ExtendedDetectedErrorState
ExtendedPrinterStatus: objItem.ExtendedPrinterStatus
Hidden: objItem.Hidden
HorizontalResolution: objItem.HorizontalResolution
InstallDate: objItem.InstallDate
JobCountSinceLastReset: objItem.JobCountSinceLastReset
KeepPrintedJobs: objItem.KeepPrintedJobs
LastErrorCode: objItem.LastErrorCode
Local: objItem.Local
Location: objItem.Location
MarkingTechnology: objItem.MarkingTechnology
MaxCopies: objItem.MaxCopies
MaxNumberUp: objItem.MaxNumberUp
MaxSizeSupported: objItem.MaxSizeSupported
Name: objItem.Name
Network: objItem.Network
Parameters: objItem.Parameters
PNPDeviceID: objItem.PNPDeviceID
PortName: objItem.PortName
PowerManagementSupported: objItem.PowerManagementSupported
PrinterState: objItem.PrinterState
PrinterStatus: objItem.PrinterStatus
PrintJobDataType: objItem.PrintJobDataType
PrintProcessor: objItem.PrintProcessor
Priority: objItem.Priority
Published: objItem.Published
Queued: objItem.Queued
RawOnly: objItem.RawOnly
SeparatorFile: objItem.SeparatorFile
ServerName: objItem.ServerName
Shared: objItem.Shared
ShareName: objItem.ShareName
SpoolEnabled: objItem.SpoolEnabled
StartTime: objItem.StartTime
Status: objItem.Status
StatusInfo: objItem.StatusInfo
SystemCreationClassName: objItem.SystemCreationClassName
SystemName: objItem.SystemName
TimeOfLastReset: objItem.TimeOfLastReset
UntilTime: objItem.UntilTime
VerticalResolution: objItem.VerticalResolution
WorkOffline: objItem.WorkOffline
[ÜberOT]
Mit VbScript kannst du auch das o.g. Fenster öffnen, mit Sendkeys den Inhalt markieren, kopieren und in ein Notepad-Fenster einfügen.
Den Inhalt des Fenster kannst du dann in einer txt abspeichern.
Das könnte dann ungefähr so aussehen:
On Error Resume Next
set wshshell = createobject("wscript.shell")
wshshell.run "rundll32 printui.dll,PrintUIEntry /ge"
wscript.sleep 500
wshshell.AppActivate "Benuteroberfläche"
wscript.sleep 500
wshshell.sendkeys "(^A)"
wshshell.sendkeys "(^C)"
wshshell.run "Notepad"
wshshell.Appactivate "Notepad"
wscript.sleep 500 ' Übrigens, damit der User auch sieht, was passiert...
wshshell.sendkeys "(^V)"
wscript.sleep 500
wshshell.sendkeys "(%D)"
wscript.sleep 200
wshshell.sendkeys "B"
wscript.sleep 400
wshshell.sendkeys "j"
wscript.sleep 400
wshshell.sendkeys "C:\asd.txt"
wshshell.sendkeys "{ENTER}"
wscript.sleep 200
'Das Fenster bleibt offen, da der User ja auch sehen soll, was passiert...