Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Fehler bei nicht vorhandenem gosub-label abfangen?

Mitglied: Bodenseehost

Bodenseehost (Level 1) - Jetzt verbinden

12.08.2009, aktualisiert 10:33 Uhr, 3824 Aufrufe, 1 Kommentar

Habe ein etwas pragmatisches script für die Druckerzuordnung laufen.

Was zunächst ganz normal eingestellt ist:

;Löschen bestehender Netzwerkdrucker:
DelTree("HKEY_CURRENT_USER\Printers\connections")

Verbindung der Drucker erfolgt über:
AddPrinterConnection("\\.........")
SetDefaultPrinter("\\...........")

funktioniert so weit.

Nun erfordert es unsere Konstellation, dass wir Drucker teilweise per Client und teilweise per User zuordnen... IdR hat jeder Client bestimmte Drucker zugeordnet, einige User bekommen dann noch ein paar Drucker mehr. Nun war ich ganz gerissen, und habe mir eine ganz einfache Zuordnung gebaut:

GOSUB @WKSTA
GOSUB @USERID

und jeweils Sprungmarken mit dem Workstation- oder Usernamen. Funktioniert ganz gut, ausser ein PC oder - häufiger - ein User findet sich nicht im Script. Dann fliegt das Script mit error "label not found" ab. Irgendwie klar.

Nun suche ich NICHT nach Tipps die Zuordnung anders zu machen, sondern - ich möchte diesen "faulen" weg weiter gehen ich - würde gerne wissen ob es eine Möglichkeit gibt, den Error abzufangen. Z.B. ein kurzer vorabcheck, ob die Sprungmarke überhaupt vorhanden ist, oder auch (bereits kurz versucht) eine Errorbedingung...???

Gibts da ideen?


Danke Euch schon mal
Mitglied: Bodenseehost
17.08.2009 um 13:56 Uhr
Gelöst...

Über "OPEN" lässt sich eine Datei - in meinem Fall das ablaufende Script selbstI - in den Speicher lesen (Mode 2 = nur Lesezugriff!), deren Inhalt kann Zeilenweise mit "READLINE" ausgelesen werden. Mit "INSTR" wird dann der jeweilige Zeileninhalt verglichen, ob ein bestimmter Teilstring - bei uns also ein mal @USERID und ein mal @WKSTA - vorhanden ist.

Sobald ein entsprechender Eintrag für Workstation und/oder UserID gefunden wurde, wird eine Hilfsvariable gesetzt, die dann ein Anspringen der entsprechenden Labels steuert. Auf diesem Wege werden nur die WKSTA und USERID angesprungen, die's im Script auch wirklich gibt.

Dann lässt sich also weiterhin recht einfach - und auch performant - für beliebige Clients und Benutzer individuelles Script oder eben Druckerzuweisungen hinterlegen.

Vielleicht braucht das ja mal jemand *g*.

Hier noch der relevante Auszug aus dem nun sauber und schnell laufenden Druckerscript:
01.
;** Sprung auf Labels für Clientnamen und/oder Benutzerid sofern vorhanden 
02.
$WKSTAExists=0 
03.
$USERIDExists=0 
04.
 
05.
IF Open(5,@LDrive+"\UEB\UEB_Map_Printer.kix",2)=0 
06.
   $x=ReadLine(5) 
07.
   WHILE @Error=0 
08.
      IF INSTR($x,@WKSTA) 
09.
         $WKSTAExists=1 
10.
      ENDIF 
11.
      IF INSTR($x,@USERID) 
12.
         $USERIDExists=1 
13.
      ENDIF 
14.
      $x=ReadLine(5) 
15.
   LOOP 
16.
ENDIF 
17.
 
18.
IF $WKSTAExists=1 
19.
   GOSUB @WKSTA 
20.
ENDIF 
21.
 
22.
IF $USERIDExists=1 
23.
   GOSUB @USERID 
24.
ENDIF 
25.
 
26.
GOSUB END
Bitte warten ..
Ähnliche Inhalte
Visual Studio
Tastatureingaben abfangen
gelöst Frage von joehuabaVisual Studio7 Kommentare

Hallo Zusammen, ich hab folgendes Problem: Ich fange mit einem Programm bestimmte Tastenkombinationen ab. Das funktioniert auch soweit. Allerdings ...

Netzwerkprotokolle
MPLS Label Distributing Protocoll
Frage von battermanNetzwerkprotokolle1 Kommentar

Hallo Leute, ich muss da mal was wegen dem Labl Distributing Protocoll fragen. Also: Wenn ein Label Switched Path ...

Visual Studio
Bewegtes Label Visual Basic
gelöst Frage von Cougar77Visual Studio1 Kommentar

Guten Abend, ich versuche mich grade ein bisschen an VB. An sich würde ich gerne ein beliebiges Element (Label, ...

Viren und Trojaner
Ransomware abfangen . Diskusion
gelöst Frage von schicksalViren und Trojaner8 Kommentare

Hallo miteinander. Ich grüble gerade mit dem Erpressertrojaner Problem. Ich bin zwar Programmiermäßig ein DAU aber trotzdem. Deshalb: Ist ...

Neue Wissensbeiträge
Sicherheit

MikroTik-Router patchen, Schwachstelle wird ausgenutzt

Information von kgborn vor 3 StundenSicherheit

Am 23. April 2018 wurde von Mikrotik ein Security Advisory herausgegeben, welches auf eine Schwachstelle im RouterOS hinwies. Mikrotik ...

Windows 10

Microcode-Updates KB4090007, KB4091663, KB4091664, KB4091666 für Windows 10

Information von kgborn vor 10 StundenWindows 101 Kommentar

Kurze Information für Administratoren von Windows 10-Systemen, die mit neueren Intel CPUs laufen. Microsoft hat zum 23. April 2018 ...

iOS
Updates für Iphone und Co
Information von sabines vor 13 StundeniOS

Gestern abend ist iOS 11.3.1 erschienen, ein kleineres Update, dass einige Lücken schließt und "Lahmlegen" nach einem Display Tausch ...

Windows 7

Windows 7 - Server 2008 R2: Exploit für Total Meltdown verfügbar

Information von kgborn vor 1 TagWindows 7

Kleine Information für Administratoren, die für die Updates von Windows 7 SP1 und Windows Server 2008 R2 SP1 verantwortlich ...

Heiß diskutierte Inhalte
Batch & Shell
Powershell: Im AD nach Rechnern mit bestimmten IP-Adressen suchen
gelöst Frage von Raven42Batch & Shell36 Kommentare

Hallo zusammen, ich suche nach einer Möglichkeit nach Computern im AD zu suchen , deren IP-Adresse mit 10.11.12. beginnt. ...

C und C++
Frage1 C Programmierung-Makefile Frage2 PHP-Programmierung HTTP-Fehler 404
Frage von KatalinaC und C++34 Kommentare

Hallo, ich habe 2 Fragen, die nichts miteinander zu tun haben aber mit denen ich mich gerade beschäftige: 1. ...

LAN, WAN, Wireless
Watchguard T15 VPN Einrichtung
gelöst Frage von thomasjayLAN, WAN, Wireless25 Kommentare

Hallo zusammen, wir möchten gerne über unsere Watchguard T15 einen VPN-Tunnel (Mobile VPN with IPSec) einrichten! Als Client nutzen ...

Windows Server
Alten DC entfernen
Frage von smartinoWindows Server24 Kommentare

Hallo zusammen, ich habe hier eine Umgebung übernommen und erstmal einen DCDIAG gemacht. Dabei fällt auf, daß eine ganze ...