Beiträge von GML
-
-
Ein echtes Danke an alle für ihre Überlegungen.
Es ist leider so, das die Information (trotz AD) so leicht nicht zu beschaffen ist. Die Überlegungen bezüglich eines mitloggens bei der Anmeldung (netzwerkfähig und so) sind korrekt. Ich hab (in wirklich ganz kleinen Netzen) das mit einem echo xxx > dateiamnetzwerk.txt gelöst - die Holzhammermethode, funktioniert auch da die wahrscheinlichkeit gleichzeitiger Zugriffe gering sind, größere Netze brauchen da sicher was netzwerkfähiges zum Abspeichern (wie oben erwähnt ..).
Ich habe mein Programmierverbrechensuch angefügt. Vielleicht kann jemand die Idee oder Fragmente davon irgendwo verwenden.Beigeschlossen sind auch zwei Programme für einen Segment-Ping um (so wie in der Hilfe beschrieben) eine ping_ziele.ini befüllen zu können. Das Programm sollte einfach eine quick & dirty Lösung sein und z.B. als Hilfestellung beim Herumpatchen dienen.
Grüße LGPS: vergessen ... kompiliert und getestet mit V3.3.14.5, da in der letzten Version der Aufbau der Buttons laaangsam erfolgt.
-
Danke für den Tip
und das Beispiel!
Grüsse
LG
-
Guten Morgen.
NIcht so ganz. WANN er angemeldet war ist mir wurst. Ich hätte halt nur gerne einen Namen zur IP/Hostname gehabt (für den Quicktip ..), ob der User jetzt gerade angemeldet ist oder wann er war wäre nicht so wichtig, hauptsache es war der Letzte (sooft wechseln hier die User nicht den PC das das relevant wäre).
Aber danke an alle. Ich hab sowas schon beim suchen läuten gehört das da seltsamerweise (obwohl alles mögliche im AD gespeichert wird
) dieser Bezug ohne Umwege nicht herzustellen ist.
Ich werde mich an der PS-Einbindung versuchen, wie oben vorgeschlagen und dann sehen wie lange die Vervollständigung der Liste braucht. Eigentlich gehts ja nur um ein Netzwerksegment (254) was halt so mit ping erreichbar ist.
Vielen Dank für die Vorschläge
LG
PS: ahhh, Mist. Gerade gesehen, Admin-Rechte erforderlich
-
Hallo
es soll (wenn es ein AD gibt) so eine Datei erzeugt/erweitert werden (bildet die Basis für periodische Ping-Abfragen, das krieg ich noch hin):
192.168.1.48|
192.168.1.50|SYN-BACKUP
192.168.1.51|
192.168.1.59|
192.168.1.60|PC-2253
192.168.1.61|PC-2439
192.168.1.63|PC-2503
192.168.1.64|PC-2474
192.168.1.65|PC-2527
192.168.1.68|PC-2584Aber: diese hätte ich gerne um die letzte/derzeitige Benutzeranmeldung erweitert (da IPs bzw. Hostnamen jetzt nicht soo griffig sind bei der Fehlersuche):
192.168.1.51||Mustermann
192.168.1.59||Musterfrau
192.168.1.59||Mustersohn
192.168.1.60|PC-2253|Musterheinrich
192.168.1.61|PC-2439|Musterfriedrich
hab aber keine Möglichkeit gefunden (ohne jetzt immensen Aufwand zu betreiben mit ext. Programmen, log-Dateianalysen etc.) im AD die Benutzeranmeldung dazu zu finden.LG
-
-
Ein Hallo an die AD-Spezialisten ...
Ich habe ein check_ping-Programm verfasst das mit einer TXT-Datei (nicht jedes kleine Netzwerk hat einen AD-Dienst laufen) mit IP|hostname arbeitet und diese Ziele periodisch kontrolliert. Bis dato habe ich diese Datei über einen IP-range Ping und dann vervollständigen mit hostname (passiert schon in check_ping) erstellt.
Das möchte ich dahingehend erweitern/ändern, das bei Vorhandensein eines AD alternativ vorgeschlagen wird diese Datei aus dem AD zu erstellen (was mir anhand der Beispiele und der genialen UDF "AD.au3" (Jonathan Clelland, water etc.) möglich erscheint.
NUR: wie bekomme ich zusätzlich den (letzten angemeldeten oder nicht angemeldeten) User in diese Liste?
Die User bekomme ich aus dem AD aber wiederrum ohne Bezug zur IP bzw. hostname, IP bzw. hostname bekomme ich aus dem AD aber ohne Bezug zum letzten User
.
Gibt es einen Vorgehenspfad wie das (überhaupt) zu lösen ist?
Danke an alle die beim Lesen nicht eingeschlafen sind
LG
-
Vielen Dank an Alle!
Dank der zahlreichen Vorschläge und Tipps konnte ich mein Problem mit Melba23 UDF lösen (peinlich für mich nur das ich $MB_ABORTRETRYIGNORE nicht wahrgenommen habe
).
LG
-
Hallo
ich muß mich als völliger Nurmi was Hooks bzw. deren Verständnis angeht, outen.
AutoIt
Alles anzeigen#include <MsgBoxConstants.au3> Local Const $HCBT_ACTIVATE = 5 ; Local Const $STM_SETIMAGE = 370 ; Local Const $IMAGE_ICON = 1 ; Local Const $LR_LOADFROMFILE = 16 ; $IconFile = @ScriptDir & "\crapper.ico" ; MsgBox(66,"MsgBox","Regular MsgBox Information") $hProc = DllCallbackRegister("Hook_Proc", "int", "int;int;int") $TID = DllCall("Kernel32.dll", "int", "GetCurrentThreadId") $hHook = DllCall("user32.dll", "hwnd", "SetWindowsHookExA", "int", $HCBT_ACTIVATE, _ "ptr", DllCallbackGetPtr($hProc), _ "hwnd", 0, _ "int", $TID[0]) consolewrite(@CRLF & MsgBox(bitor($MB_ICONQUESTION, $MB_ABORTRETRYIGNORE, $MB_APPLMODAL), "Stammdaten - Auswahl", "Auswahl für Nr. xxxxxx" & " treffen") & @CRLF & @CRLF) DllCall("user32.dll", "int", "UnhookWindowsHookEx", "hwnd", $hHook[0]) DllCallbackFree($hProc) Exit ; ; Hook auf die MsgBox ; Func Hook_Proc($nCode, $wParam, $lParam) Switch $nCode Case $HCBT_ACTIVATE #cs Local $hIcon = DllCall("user32.dll", "hwnd", "LoadImage", "hwnd", 0, _ "str", $IconFile, _ "int", $IMAGE_ICON, _ "int", 0, _ "int", 0, _ "int", $LR_LOADFROMFILE) DllCall("user32.dll", "int", "SendDlgItemMessage", "hwnd", hWnd($wParam), _ "int", 20, _ "int", $STM_SETIMAGE, _ "int", $IMAGE_ICON, _ "int", $hIcon[0]) #ce ControlSetText(hWnd($wParam), "", 3, "Doku öffnen") ControlSetText(hWnd($wParam), "", 4, "Nr.-Druck") ControlSetText(hWnd($wParam), "", 5, "ERP suchen") Case Else $RET = DllCall("user32.dll", "int", "CallNextHookEx", "hwnd", $hHook[0], _ "int", $nCode, _ "int", $wParam, _ "int", $lParam) Return $RET[0] EndSwitch Return EndFunc
Soweit funktioniert obige Funktion, ich schaffe es aber nicht das rote Messagebox-Schließkreuz zu aktivieren bzw. den Abbruch-Wert zurückzugeben. Aus unterschiedlichen Gründen MUSS ich die MsgBox() verwenden - klappt ja auch - bis auf eine Abbruchbedingung
.
Für einen Hinweis bin ich dankbar.
GML
-
Danke! Genau zur rechten Zeit.
Gerade kämpfe ich mit dllstructs
LG
-
So eine ähnliche Variante hab ich auch versucht.
Danke!
LG
-
Sapristi!
Oh ja, das ist so in etwa wie ich mir das vorgestellt habe. Ob das Symbol jetzt vorne oder hinten wäre, wäre egal.
Herzlichen Dank, damit kann ich experimentieren bzw. mir das anpassen (versuchen
)
Danke an alle Kopfzerbrecher
LG
-
Im Moment hab ich nicht viel mehr als eine Idee ... bzw. Wunsch wies aussehen soll. Ich überlege mir gerne vorher bevor ich loslege um dann nicht hintennach (siehe Icon-Auflösungsproblem etwas weiter unten) draufzukommen das hätte besser gehen können
Das Eingabefeld ist ein GUICtrlCreateEdit. Die erste Idee war eine Funktion die mit GUICtrlCreateEdit arbeitet und das oben im Bild gezeigte aus einzelnen Elementen zusammensetzt. Also GUICtrlCreateEdit, die dafür übergebene Länge um yy verkürzen, ein Label mit der Länge yy anhängen und mit dem X anzeigen - ob da ein Icon geschickt ist weiß ich nicht, wäre zwar optisch schöner, dann müßte ich aber auf unterschiedliche BS-Auflösungen reagieren denke ich - ev. ist der Buchstabe X (oder ev. ein Sonderzeichen?) mit einem leicht grauen Hintergrund besser und das direkt nach dem GUICtrlCreateEdit angezeigt so das der Eindruck EINES Eingabebereiches entsteht.
In html wäre das: ✖ HTML code ✖ oder ✕ für ✕ statt eines Icons ... oder überhaupt eine Funktion mit grünem OK-Haken, rotem Löschkreuz, Fragezeichen ..... träum ...
Mir geht es nicht so um ein konkretes Beispiel sondern ob die Idee(n) Vor- und Nachteile haben.
-
Ein gutes neues Jahr vorab als Erstes!
Ich bitte um Schwarmwissen. Gibt es eine Möglichkeit ein solches Eingabefeld zu erzeugen (UDF, Funktion ...)?
oder geht das "nur zu Fuß" mit label, getdata, ctrlread und icon über das label/getdata legen? Ein Hinweis in die Richtung genügt mir völlig, ich möchte nur nicht ein Phantom suchen das es vielleicht gar nicht gibt.
Die Möglichkeit durch reinklicken den "Feld"-Inhalt zu löschen habe ich, möchte aber den Inhalt bestehen lassen (um Erweiterungen bzw. Korrekturen am Suchbegriff vornehmen zu können) und nur beim Klick auf das X den Inhalt komplett löschen.
DankeLG
-
Empfehlen kann ich WuMgr: WuMgr auf Github/download. Damit lassen sich nicht nur die Updates blockieren (dauerhaft, zumindest unter Win10 getestet), sondern auch trotzdem selektiv einzelne Updates durchführen.
MfG
-
Sehr interessant. Hatte ich hier schon einmal erwähnt gesehen, aber mangels damaligem Interesse nicht gespeichert (ich weiß Suchfunktion 😔😔). 😔
Danke
LG
-
Oh, danke. Das ist eine sehr gute Ausführung 👍
Ist eh fad über Ostern 😉 da hab ich Zeit zu lesen.
LG
-
Vielen Dank
"(?i)DNS|Gateway|Server|NAS"
genau sowas wars
Frohe Ostern
LG
-
Trotz Studium vieler Unterlagen erschließt sich mir RegEx nicht wirklich ...
Ich habe (als Array):
192.168.10.99|mein PC
192.168.10.99|NAS
192.168.10.99|dein PC
192.168.10.99|Server
ca. 200 Einträge dzt.
dazu Schlüsselworte (sind nur wenige, als Array):
DNS
Gateway
Server
NAS
oder ev. als String (was leichter in RegEx zu verarbeiten ist ...) z.B.
DNS|Gateway|Server|NAS
vorliegen und möchte - wenn diese bestimmten Schlüsselwörter vorkommen (z.B. in "192.168.10.99|NAS" , eine Aktion beim Erzeugen eines Buttons setzen (Hintergrundfarbe, SchriftFett etc.) - damit habe ich kein Problem, bis auf die RegEx ....
Natürlich könnte ich für jeden Eintrag "192.168.10.99|NAS" die Schlüsselwörter in einer Schleife durchprüfen (StringInStr..), das dauert halt.
Vielleicht kann jemand so nett sein und mir mit einer Expression weiterhelfen (PcreTkit scheint es leider so nicht mehr zu geben, damit konnte man Expressions durchprobieren).
Danke
LG
-
Danke für alle Vorschläge.
Projekt gecancelt (zuviel Aufwand).
Hab einen teilweisen Ersatz gefunden. Falls das wer vielleicht braucht:
Directory Tree Generator
Directory Tree Generator (DirGen) is a small tool based on .Net-framework 4 that helps administrators to build any Directory Structure they want without any effort and with organized way.
Directory Tree Generator Functions
DirGen provide various functions to help the administrator accomplish his objective:
- Read Excel-Sheets and Extract the Folder Structure Tree.
- Generate and modify Directory Structure Tree in Run-time.
- Generate the Directory Structure Tree in Text File.
- Execute The Directory Structure Tree on The Windows File System.
- Export Directory Structure Tree to Excel Format.
- Support Command Line Parameters for Scripting.
zu finden hier: DirGen Webseite
Ist zwar nicht AutoIt aber auch ganz schön listig.
LG
PS: hier noch das Excel-Sheet zum Erstellen eines Excel-Sheets von einem Master-Verzeichnis (von der Festplatte ausgelesen). Im erstellten Excel sieht man auch schön die Form, wie das auszusehen hat, damit GenDir damit was anfangen kann.
Das Makro kann /muß angepasst werden!