1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Micha_he

Beiträge von Micha_he

  • Per Rechtsklickmenü AU3-Datei erstellen

    • Micha_he
    • 2. Dezember 2013 um 14:57

    'HKEY_CLASSES_ROOT' funktioniert aber nur, wenn der User dies nicht in 'HKEY_CLASSES_USER\Software\Classes' anders definiert hat. Der Benutzer-Schlüssel ist mit höherer Priorität, wenn er vorhanden ist (ggf. löschen, dann gilt 'HKEY_CLASSES_ROOT').

  • com port blockieren

    • Micha_he
    • 1. Dezember 2013 um 12:24

    Such mal nach der 'CommMG.au3' im Forum. Ist eine DLL inkl. AutoIt-Wrapper.

    Die Funktion '_CommClearOutputBuffer()' könnte ggf. helfen.

  • AutoIT und Linux?

    • Micha_he
    • 18. November 2013 um 10:33

    Wir machen das über 'plink.exe':

    Spoiler anzeigen
    [autoit]

    ; Benötigt 'plink.exe' aus dem Putty-Paket
    ; getestet mit der Version vom 31.08.2006

    [/autoit] [autoit][/autoit] [autoit]

    $host = "host"
    $user = "root"
    $pass = "password"

    [/autoit] [autoit][/autoit] [autoit]

    $linuxcommand = "cat /etc/resolv.conf;exit"
    $stream = Run('"' & @scriptdir & '\plink.exe" ' & $user & '@' & $host & ' -pw ' & $pass & ' ' & $linuxcommand, @scriptdir, @SW_HIDE,6)
    $out = "STD-OUT:" & @CRLF & @CRLF

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $out &= StdOutRead($stream)
    If @error then ExitLoop
    Wend

    [/autoit] [autoit][/autoit] [autoit]

    Msgbox(0,"Ausgabe",$out)

    [/autoit]

    Achtung: Bei SSH-Verbiindungen muss einmal vorab der Hostkey manuell bestätigt werden !

  • Backup Lösung - LastBackup anzeigen

    • Micha_he
    • 7. November 2013 um 17:38

    TraySetToolTip()

  • Probleme mit REGWRITE auf remotem PC

    • Micha_he
    • 7. November 2013 um 15:36

    und mindestens ab Windows 7 muss der Dienst "Remoteregistrierung" auf dem Zielsystem gestartet sein.
    Firewall muss glaube ich nicht speziell konfiguriert werden.

    Nochmals Gruß
    Micha_he

  • Probleme mit REGWRITE auf remotem PC

    • Micha_he
    • 7. November 2013 um 09:04

    Ich würde es so versuchen, oder enthält '' bereits führende und nachfolgende Backslash ?

    [autoit]

    RegWrite("\\\" & GUICtrlRead($Compname) & "\HKEY_LOCAL_MACHINE\SOFTWARE\pSAG\proalpha-client-production\5.2\proALPHA", "CADViewPrg", "REG_SZ", "C:\Program Files\Adobe\Reader 11.0\Reader\AcroRd32.exe")

    [/autoit]

    Und bei einem 64bit-System '\HKLM64\...' verwenden.

    Gruß
    Micha_he

  • SLUI.exe starten

    • Micha_he
    • 27. August 2013 um 16:03

    Ich würde mal raten, Standardfehler: Windows7 x64 und AutoIt 32bit.

    Dann muss es lauten: Run("C:\Windows\Sysnative\SLUI.exe")

    Möglicherweise ist es aber auch vorteilhafter, das Kommandozeilentool 'slmgr.exe' zu verwenden.

  • frage zu ping- shutdown

    • Micha_he
    • 7. August 2013 um 08:01

    Es könnte schon ausreichen das 'sleep(60000)' gleich hinter den Anfang der While-Schleife zu stellen, anstatt es kurz vor dem Wend() erst auszuführen.
    Damit erreichst Du, das das Skript erst einmal eine Minute wartet, bevor der Ping-Test startet. Das könnte schon ausreichen. Ggf. auf 2 Minuten erhöhen, je nach dem ob das unter Umständen noch zu schnell ist.

  • Shellexecute und RUN unter Windows 7

    • Micha_he
    • 1. August 2013 um 11:07

    Du könntest dein Script als x64 kompilieren (Aut2Exe / Compile for System : x64) und dann den ShellExecute-Befehl nochmal testen. Dann würde der Aufruf ja direkt aus einer x64-Anwendung erfolgen.

  • Shellexecute und RUN unter Windows 7

    • Micha_he
    • 1. August 2013 um 10:33

    Das einzige was mir dazu einfällt wäre:

    Wenn Du einen Doppelklick unter dem Windows-Explorer auf einem Win7-x64-System machst, wird die Anwendung aus dem x64-System (Explorer ist ja die x64-Variante) gestartet und wenn Du das aus AutoIt heraus startest, wird dein Script ggf. als 32bit-Version gestartet.

    Wenn dein System ein x64 ist, könnte man mal einen Test machen, indem man den Doppelklick aus einem 32bit Tool (z.B. Totalcommander 32bit) heraus anklickt, ob dies auch funktioniert. Ggf. lassen sich ja reine x64-Programme nicht aus einem 32bit-Autoit heraus starten !?

    Gruß
    Micha

  • frage zu ping- shutdown

    • Micha_he
    • 22. Juli 2013 um 08:04

    Und das was Du (ohne das Du deinen Anfang zeigts) 'versuchst' in deutsch zu schreiben,
    kann kaum jemand lesen.

    Vielleicht versuchst Du es nochmal, wenn Du wieder am Rechner sitzt !
    Ein bischen mehr Mühe wäre schön...

    Micha

  • MsgBox ohne Fokus

    • Micha_he
    • 15. Juli 2013 um 08:01

    Hallo AutoIt'ler.

    Ich nutze in einem meiner Tools eine MsgBox zur Ausgabe einer Info.
    Die MsgBox hat leider die Eigenschaft, immer den Fokus an sich zu reißen, so das eine Benutzereingabe in einem anderen Fenster, ab dem Moment nicht mehr funktioniert, bis ich das bisherige Fenster wieder aktiviere.

    Kann man der originalen MsgBox das abgewöhnen ? Laut Hilfe kann ich nichts finden. Oder hat jemand schon eine MsgBoxEx geschaffen, die diese Eigenart nicht aufweist ?
    sonst muss ich mich mal ransetzen und ein MsgBox-GUI selbst entwerfen....

    Gruß
    Micha

  • FileSelectFolder mit Dateianzeige

    • Micha_he
    • 5. Juli 2013 um 14:52

    Habe ich im ersten Beitrag schon ergänzt !

    Ich war fest der Meinung ich hatte auf der Arbeit eine weitere Lösung. Ist aber leider nicht der Fall oder ich finde sie nicht mehr wieder.

    Tut mir leid ?(

  • FileSelectFolder mit Dateianzeige

    • Micha_he
    • 3. Juli 2013 um 17:41

    Lösungsmöglichkeit 1 (habe ich auch mal nach gesucht):

    Spoiler anzeigen
    [autoit]

    Global Const $DIR_Flag_Desktop = 0 ; Desktop
    Global Const $DIR_Flag_Programme = 2 ; Programme
    Global Const $DIR_Flag_Systemsteuerung = 3 ; Systemsteuerung
    Global Const $DIR_Flag_Drucker = 4 ; Drucker
    Global Const $DIR_Flag_EigeneDateien = 5 ; Eigene Dateien
    Global Const $DIR_Flag_Favoriten = 6 ; Favoriten
    Global Const $DIR_Flag_Autostart = 7 ; Autostart
    Global Const $DIR_Flag_Recent = 8 ; Recent (Inhalt des Dokumente-Menüs)
    Global Const $DIR_Flag_SendenAn = 9 ; Senden an
    Global Const $DIR_Flag_Papierkorb = 10 ; Papierkorb
    Global Const $DIR_Flag_Startmenue = 11 ; Startmenü
    Global Const $DIR_Flag_DesktopOrdner = 16 ; Desktop-Ordner
    Global Const $DIR_Flag_Arbeitsplatz = 17 ; Arbeitsplatz
    Global Const $DIR_Flag_Netzwerkumgebung = 18 ; Netzwerkumgebung
    Global Const $DIR_Flag_OrdnerNetzwerkumgebung = 19 ; Ordner Netzwerkumgebung
    Global Const $DIR_Flag_Schriftarten = 20 ; Schriftarten
    Global Const $DIR_Flag_Vorlagen = 21 ; Vorlagen
    Global Const $DIR_Flag_StartmenueAlle = 22 ; Startmenü für Alle Benutzer
    Global Const $DIR_Flag_ProgrammeAlle = 23 ; Programme für Alle Benutzer
    Global Const $DIR_Flag_Programme2 = 24 ; Startmenü für Alle Benutzer
    Global Const $DIR_Flag_Desktop2 = 25 ; Desktop für Alle Benutzer
    Global Const $DIR_Flag_Anwendungsdaten = 26 ; Anwendungsdaten
    Global Const $DIR_Flag_PrintHood = 27 ; PrintHood
    Global Const $DIR_Flag_FavoritenAlle = 31 ; Favoriten für Alle Benutzer
    Global Const $DIR_Flag_TemporaereInternetdateien = 32 ; Temporäre Internetdateien
    Global Const $DIR_Flag_Cookies = 33 ; Cookies
    Global Const $DIR_Flag_Verlauf = 34 ; Verlauf

    [/autoit] [autoit][/autoit] [autoit]

    Global Const $BIF_BROWSEFORCOMPUTER = 0x1000 ; Only return computers
    Global Const $BIF_BROWSEFORPRINTER = 0x2000 ; Only allow the selection of printers
    Global Const $BIF_BROWSEINCLUDEFILES = 0x4000 ; The browse dialog box will display files as well as folders
    Global Const $BIF_DONTGOBELOWDOMAIN = 0x2 ; Do not include network folders below the domain level
    Global Const $BIF_EDITBOX = 0x10 ; Include an edit control in the browse dialog box
    Global Const $BIF_USENEWUI = 0x40 ; Use New Style (> Windows 2000)
    Global Const $BIF_RETURNONLYFSDIRS = 0x1 ; Only return file system directories
    Global Const $BIF_ALLOLDSTYLEFLAGS = BitOR ($BIF_BROWSEFORCOMPUTER, $BIF_BROWSEFORPRINTER, $BIF_BROWSEINCLUDEFILES, $BIF_DONTGOBELOWDOMAIN, $BIF_EDITBOX, $BIF_RETURNONLYFSDIRS, $BIF_USENEWUI)

    [/autoit] [autoit][/autoit] [autoit]

    $dir = _FileSelectFolder("Test",$DIR_Flag_Arbeitsplatz,$BIF_BROWSEINCLUDEFILES + $BIF_USENEWUI + $BIF_EDITBOX)
    msgbox(0,"",$dir)

    [/autoit] [autoit][/autoit] [autoit]

    Func _FileSelectFolder ($title, $root = 0, $flags = 0, $hwnd = 0)
    Local $ret, $pidl, $res = ''
    ; Creating Structures
    Local $ubi = DllStructCreate ("hwnd;ptr;ptr;ptr;int;ptr;ptr;int") ; structure BROWSEINFO
    Local $utl = DllStructCreate ("char[512]") ; Browse title
    Local $urs = DllStructCreate ("char[260]") ; Buffer for path (MAX_PATH size)
    ;Local $ulf = BitOR (BitShift(BitAnd ($flags,1),-9), _ ; 1: NOT show Create Folder Button
    ; BitShift(BitAnd ($flags,2),-5), _ ; 2: Use New Dialog Style
    ; BitShift(BitAnd ($flags,4),-2)) ; 4: Show Edit Control
    Local $ulf = BitAnd ($flags, $BIF_ALLOLDSTYLEFLAGS) ; Supported flags
    ; Filling structures
    DllStructSetData ($utl, 1, $title)
    DllStructSetData ($ubi, 1, $hwnd)
    DllStructSetData ($ubi, 3, DllStructGetPtr($urs))
    DllStructSetData ($ubi, 4, DllStructGetPtr($utl))
    DllStructSetData ($ubi, 5, $ulf)
    $ret = DllCall ("shell32.dll", "ptr", "SHGetSpecialFolderLocation", _
    "int", 0 , _
    "int", $root , _
    "ptr", DllStructGetPtr($ubi, 2))
    If $ret[0] Then Return $res
    ; Start browse window
    $pidl = DllCall ("shell32.dll", "ptr", "SHBrowseForFolder", "ptr", DllStructGetPtr ($ubi))
    If $pidl[0] Then
    $ret = DllCall ("shell32.dll", "int", "SHGetPathFromIDList", _
    "ptr", $pidl[0], _
    "ptr", DllStructGetPtr ($urs))
    If $ret[0] Then $res = DllStructGetData ($urs, 1)
    DllCall ("ole32.dll", "int", "CoTaskMemFree", "ptr", $pidl[0]) ; clear memory
    EndIf
    DllCall ("ole32.dll", "int", "CoTaskMemFree", "ptr", DllStructGetData ($ubi, 2))
    Return $res
    EndFunc

    [/autoit]

    Lösungsmöglichkeit 2 (muss ich morgen nachreichen...): --> finde ich leider nicht mehr wieder !

  • Probleme mit RunAs

    • Micha_he
    • 7. Juni 2013 um 12:45

    Ohne das wir den Inhalt der Variablen $progbin und $sProcess kennen, ist es für uns unmöglich zu helfen.
    Mal vom Parameter "/A:$(#OKF" & $impfilearraysplit[1] & ")\ARCHIV/F:" & $eimport & "\" & $impfilearray[$k] & " /SHR /BAT" abgesehen. Hier kann man, ohne das dazugehörige Programm und die Array-Inhalte zu kennen, gar nichts sagen.

    Gruß
    Micha_he

  • Autoit und Windows Server 2003

    • Micha_he
    • 6. Juni 2013 um 21:38

    Wo braucht mein Script eine IP-Range ?

    Den 'sitename', da gebe ich Dir Recht. Vielleich kannst Du ihn aus der Registry lesen ?

  • Autoit und Windows Server 2003

    • Micha_he
    • 6. Juni 2013 um 13:55

    Wir kommen der Sache näher. Die DC's des Standortes sollte folgendes ermitteln:

    [autoit]

    $sSite = "sitename"

    [/autoit][autoit][/autoit][autoit]

    $oRootDSE = ObjGet("LDAP://RootDSE")
    $sCNC = $oRootDSE.get("configurationNamingContext")

    [/autoit][autoit][/autoit][autoit]

    $cServers = ObjGet("LDAP://cn=Servers,cn=" & $sSite & ",cn=Sites," & $sCNC)

    [/autoit][autoit][/autoit][autoit]

    For $oServer In $cServers
    Msgbox(0,"DC des Standortes '" & $sSite & "'",$oServer.Name)
    Next

    [/autoit]

    Welche der möglichen DC's der Client wählt, ist mir noch unklar. Wahrscheinlich den der zuerst anwortet.

    Gruß
    Micha_he

  • Autoit und Windows Server 2003

    • Micha_he
    • 6. Juni 2013 um 12:20

    Wobei dann in der Liste der DC, alle eine NETLOGON-Freigabe haben sollten, die durch Replikation auch alle gleich sind.
    Also such Dir einen aus!

    Jedenfalls bei uns...

  • Autoit und Windows Server 2003

    • Micha_he
    • 5. Juni 2013 um 21:21

    Per DNS-Abfrage:

    z.B.:
    - nslookup
    - set q=srv
    - _ldap._tcp.dc._msdcs.{domain_name)

    So sollte es klappen, wobei ich das z.Zt. mangels Domäne nicht testen kann. Ich bin zu Haus !
    Edit: Geprüft - Geht !

  • RunAs - Administrator - Netzlaufwerk - Domäne

    • Micha_he
    • 17. Mai 2013 um 11:21
    Zitat von GerhardSchr

    sonst würde ja uac auch nicht funktionieren, wenn ich ein Programm in einer freigabe mit "als administrator starten" ausführe...

    Ich meine mit meiner Aussage nicht die UAC, sondern den AutoIt-RunAs-Befehl. Für den gilt das nicht !

    Der übergebene User, egal ob Domäne oder Lokal, muss die Berechtigung für die Freigabe haben und falls ein Netzlaufwerk verwendet wird, muss die Pfadangabe durch den UNC-Pfad ersetzt werden.

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™