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. Bitnugger

Beiträge von Bitnugger

  • Kleines AutoIt-Capture Programm

    • Bitnugger
    • 3. September 2021 um 20:08

    Schön... die Funktion _ScreenCapture_CaptureWnd scheint bei mehreren Monitoren jedoch fehlerhaft zu sein, denn bei mir werden dann zwei Fenster nebeneinander angezeigt. Ziehe ich min. 16 Pixel von der tatsächlichen Breite des aktiven Windows ab, dann funktioniert es.

    $hCapture = _ScreenCapture_CaptureWnd('', $hWnd, 0, 0, -1, -1, False)

    Test_2x.png

    Local $aPos = WinGetPos($hWnd)

    $hCapture = _ScreenCapture_CaptureWnd('', $hWnd, 0, 0, $aPos[2] - 16, -1, False)

    Test_1x (-16).png

  • Mehrere Windows Programme ausführen

    • Bitnugger
    • 21. August 2021 um 00:28
    Zitat von misterspeed

    Dein run(...) Aufruf von PCO-View ist schlichtweg falsch (Dateiendung fehlt). Daher wird das Programm nicht gestartet und dein Script bleibt sehr wahrscheinlich beim darauffolgenden WinWaitActive(..) hängen.

    Das ist nicht ganz richtig... "Test.exe" wird mit Run() auch ausgeführt, wenn nur "Test" angegeben wird.

    So auch mit alle anderen (ausführbaren) Erweiterungen, die in PATHEXT enthalten sind.

    C:\>echo %PATHEXT%

    .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW

  • Ich möchte mein acc löschen lassen

    • Bitnugger
    • 14. August 2021 um 23:16
    Zitat von Musashi

    Seltsam, bei mir taucht diese Option auf der Verwaltungsseite nicht auf :/ .

    Hier auf dieser Seite ist das bei mir die letzte Option: https://autoit.de/wcf/account-management/

  • Ich möchte mein acc löschen lassen

    • Bitnugger
    • 14. August 2021 um 22:25

    Das kannst du auch selbst machen...

    4.png

  • Koda Form Designer

    • Bitnugger
    • 14. August 2021 um 21:51
    Zitat von Silvermoon1

    Der Koda-Formdesigner mag keinen zweiten Bildschirm.

    Kann ich nicht bestätigen... denn ich habe auch zwei (gleich große) Monitore angeschlossen.

  • Koda Form Designer

    • Bitnugger
    • 14. August 2021 um 17:43

    Bei mir läuft der Koda Form Designer(32 bit) auf Win 10 (64 bit)... ich habe testweise mal einen Label, Input und Button erstellt und den Code dann in SciTE eingefügt... alles ok!

    Ich vermute der Fehler entsteht durch den Code, den du mit Koda erzeugen willst... was genau machst du da?

  • SQLite - Möglichkeit Abfrage beschleunigen?

    • Bitnugger
    • 10. August 2021 um 01:05
    Zitat von Banana_2_Day

    Was ist ein guter SQLite Datenbank Viewer unter Windows 8 - 10?

    Ich benutze den hier: https://sqlitebrowser.org/blog/version-3-12-2-released/

  • Kombinatorik UDF ArrayCombinations - Verschiedene Möglichkeiten der Zusammenstellung von Elementen einer Menge

    • Bitnugger
    • 29. Juli 2021 um 02:22

    Sehr schön...

    Zeile 39 in ArrayCombinations.au3 muss weg.

    39 _ArrayCombinations

  • Fehler in der deutschen Hilfe bitte hier melden (Hilfedatei 3.3.14.5 2021.04.04)

    • Bitnugger
    • 21. Juni 2021 um 03:08
    Zitat von Musashi

    Der Folgesatz ist inhaltlich nicht falsch,

    Doch, ist er... weil "Diese sucht auch in allen Subitems." sich auf _GUICtrlListView_FindText() bezieht, und da werden nur die Items durchsucht.

  • Fehler in der deutschen Hilfe bitte hier melden (Hilfedatei 3.3.14.5 2021.04.04)

    • Bitnugger
    • 20. Juni 2021 um 21:21
    Zitat von Musashi

    _GUICtrlListView_FindInText

    The search is case insensitive. Unlike _GUICtrlListView_FindText(), this function will search all subitems for the text as well.

    Die Suche berücksichtigt die Groß- und Kleinschreibung. Außerdem kann auch die Funktion _GUICtrlListView_FindText() benutzt werden. Diese sucht auch in allen Subitems.

    Bei der Suche wird die Groß-/Kleinschreibung nicht beachtet. Im Gegensatz zu _GUICtrlListView_FindText() durchsucht diese Funktion auch alle Subitems nach dem Text.

  • WMIC - Interface

    • Bitnugger
    • 7. Juni 2021 um 01:22
    Zitat von BugFix

    In anderen Windows 10 Versionen wird nicht USAGE sondern wieder SYNTAX verwendet.

    Wieso prüfst du nicht die WMIC-Version? Bei mir ist es die Version 10.0.1941.1 und da wird Syntax: verwendet.

    WMICodeCreator und WMICExplorer kennst du?

    WMIC ist ja veraltet... was aber stattdessen benutzt werden soll, schreiben die Deppen nicht.

  • WMIC - Interface

    • Bitnugger
    • 6. Juni 2021 um 01:29
    Zitat von BugFix

    Local $bStart = False, $sSyntax = '', $sDetect = @OSBuild > 10000 ? 'USAGE:' : 'SYNTAX:'

    Das funktioniert so nicht zuverlässig... @OSBuild ist bei mir 19042 und $sDetect muss SYNTAX: sein.

  • _WinAPI_GetProcessCommandLine​() funktioniert scheinbar nicht mehr?

    • Bitnugger
    • 4. Juni 2021 um 22:29
    Zitat von HansJ54

    Den Suchstring hatte ich im Script in #14 weiter oben schon korrigiert, läuft ja einwandfrei jetzt.

    Quatsch, das ist so, als ob du Äpfel mit Birnen vergleichst... in Post #9 verwendest du in dem Run() den Befehl Find, in Post #14 machst du es ganz anders - ohne Find.

    Zitat von HansJ54

    Aber was macht das "call terminate" bei Dir?

    Dasselbe wie bei dir: Hiermit werden alle Prozesse, die dem Suchmuster entsprechen, terminiert (gekillt).

    Zitat von HansJ54

    Und wmic path und wmic process sind gleich?

    Hä?

    Code
    C:\Users\ghost>wmic path /?
    
    Wechselt zu vollständigen WMI-Objektpfaden.
    SYNTAX:
    
    PATH (<Pfadausdruck> | (<Klassenpfadausdruck> [WHERE <WHERE-Klausel>]))
    [<Verbklausel>]
  • _WinAPI_GetProcessCommandLine​() funktioniert scheinbar nicht mehr?

    • Bitnugger
    • 4. Juni 2021 um 21:00

    Alles in einem Rutsch...

    AutoIt
    ;~ Example: 'WMIC path win32_process WHERE ' & "Name='notepad.exe' AND CommandLine like '%%' " & 'CALL terminate' ; ohne Parameter
    ;~ Example: 'WMIC path win32_process WHERE ' & "Name='notepad.exe' AND CommandLine like '%AMD.txt%' " & 'CALL terminate' ; mit Parameter
    
    Local $sName = 'chrome.exe', $sCommandLine = '%chrome_wd_profil%'
    Local $sCMD = StringFormat('WMIC path win32_process WHERE "Name=%s AND CommandLine LIKE %s" CALL terminate', "'" & $sName & "'", "'" & $sCommandLine & "'")
    ConsoleWrite("@@_Debug_line" & @TAB & @TAB & @ScriptLineNumber & "   var: $sCMD --> " & $sCMD & @LF)
    
    Run($sCMD, '', @SW_HIDE) ; --> WMIC path win32_process WHERE "Name='chrome.exe' AND CommandLine LIKE '%chrome_wd_profil%'" CALL terminate
    Zitat von HansJ54

    Hast Du eine Idee, was bei meinem Run() falsch ist?

    Der Suchstring für Find muss in Quote stehen!

    $iPID = Run(@ComSpec & ' /c ' & 'WMIC path win32_process get Processid,Commandline |find "' & $iPIDSearch & '"')

  • _WinAPI_GetProcessCommandLine​() funktioniert scheinbar nicht mehr?

    • Bitnugger
    • 3. Juni 2021 um 20:39
    Zitat von HansJ54

    Und mein kurzes Script funktioniert auch nicht - habe noch nie den Output eines Run()-Befehls weiterverarbeitet:

    Zitat von HansJ54

    $sOutput = "";StdoutRead($iPID)

    Hust...

  • _WinAPI_GetProcessCommandLine​() funktioniert scheinbar nicht mehr?

    • Bitnugger
    • 3. Juni 2021 um 20:34

    Das sieht schon etwas anders aus...

    AutoIt: _WmiObj_GetProcessCommandLine.au3
    ;-- TIME_STAMP   2021-06-03 20:31:33
    
    #RequireAdmin
    
    #include <Array.au3>
    
    _Example()
    
    Func _Example()
        Local $aList
    
        ; Retrieve command-line arguments for all processes the system
        If Not (@error Or @extended) Then
            $aList = ProcessList() ; Name, PID
            _ArrayColInsert($aList, 2) ; Commandline
            For $i = 1 To $aList[0][0]
                $aList[$i][2] = _Proc($aList[$i][0])
            Next
        EndIf
    
        _ArrayDisplay($aList, '_WinAPI_GetProcessCommandLine', '', 0, Default, 'Name|PID|Commandline')
    EndFunc
    
    Func _Proc($proc, $strComputer=".")
      Local $oWMI=ObjGet("winmgmts:{impersonationLevel=impersonate}!\\" & $strComputer & "\root\cimv2")
      Local $oProcessColl = $oWMI.ExecQuery("Select * from Win32_Process where Name= " & '"'& $Proc & '"')
    
      For $Process In $oProcessColl
        Return $Process.Commandline
      Next
    EndFunc
    Alles anzeigen
  • _WinAPI_GetProcessCommandLine​() funktioniert scheinbar nicht mehr?

    • Bitnugger
    • 3. Juni 2021 um 16:07
    Zitat von HansJ54

    Hast Du das bei Dir mal laufen lassen? Bekommst Du auch so viele Fehler?

    Ja, und ja. Da scheint sich in der Tat etwas geändert zu haben... evtl. funktioniert es, wenn das Script als System-Process gestartet wird.

    Kompiliert und als Exe gestartet mit "Als Administrator ausführen" bringt übrigens auch wieder andere Ergebnisse...

  • _WinAPI_GetProcessCommandLine​() funktioniert scheinbar nicht mehr?

    • Bitnugger
    • 3. Juni 2021 um 15:40
    Zitat von HansJ54

    Leider sind die Fehler 20 und 40 nicht dokumentiert

    Um zu erfahren wieso eine _WinAPI-Funktion einen Fehler meldet, musst du _WinAPI_GetLastError() und _WinAPI_GetErrorMessage() verwenden... ich habe das hier mal eingebaut.

    AutoIt
    ;-- TIME_STAMP   2021-06-03 15:29:39
    
    #RequireAdmin
    
    #include <Array.au3>
    #include <WinAPIHObj.au3>
    #include <WinAPIProc.au3>
    #include <WinAPIError.au3>
    
    _Example()
    
    Func _Example()
        Local $aAdjust, $aList = 0, $iAPIError
    
        ; Enable "SeDebugPrivilege" privilege for obtain full access rights to another processes
        Local $hToken = _WinAPI_OpenProcessToken(BitOR($TOKEN_ADJUST_PRIVILEGES, $TOKEN_QUERY))
    
        _WinAPI_AdjustTokenPrivileges($hToken, $SE_DEBUG_NAME, $SE_PRIVILEGE_ENABLED, $aAdjust)
    
        ; Retrieve command-line arguments for all processes the system
        If Not (@error Or @extended) Then
            $aList = ProcessList()
            _ArrayColInsert($aList, 2)
            _ArrayColInsert($aList, 3)
            _ArrayColInsert($aList, 4)
            For $i = 1 To $aList[0][0]
                $aList[$i][2] = _WinAPI_GetProcessCommandLine($aList[$i][1])
                If @error Then
                    $iAPIError = _WinAPI_GetLastError()
                    $aList[$i][3] = '0x' & Hex($iAPIError, 8)
                    $aList[$i][4] = _WinAPI_GetErrorMessage($iAPIError)
                EndIf
            Next
        EndIf
    
        ; Enable SeDebugPrivilege privilege by default
        _WinAPI_AdjustTokenPrivileges($hToken, $aAdjust, 0, $aAdjust)
        _WinAPI_CloseHandle($hToken)
    
        _ArrayDisplay($aList, '_WinAPI_GetProcessCommandLine', '', 0, Default, 'Name|PID|Commandline|APIError|APIErrorText')
    EndFunc
    Alles anzeigen
  • Auf Windows-Tooltip (tooltips_class32) warten funktioniert nicht (ANFÄNGER)

    • Bitnugger
    • 25. Mai 2021 um 22:12
    Zitat von kilo

    ich muss bzgl. einer Einstellung auf den Windows-Tooltip (CLASS:tooltips_class32; TTLE: Dies ist ...

  • Struktur _CONSOLE_FONT_INFOEX in AutoIt darstellen

    • Bitnugger
    • 9. Mai 2021 um 18:57

    In der Console.au3 hat sich in einem der Funktionsheader ein kleiner Fehler eingeschlichen, der auch in der Console.api übernommen wurde.

    Hier wird ein falscher Funktionsname verwendet:

    _Console_GetScreenBufferFullscreen( [ $hConsoleOutput [, $hDll ]] ) Retrieves the specified console screen buffer's color settings.

    Richtig ist:

    _Console_GetScreenBufferColorTable( [ $hConsoleOutput [, $hDll ]] ) Retrieves the specified console screen buffer's color settings. (Requires: #include <Console.au3>)


    Ob die ersten beiden Zeilen etwas in einer UDF zu suchen haben, lasse ich mal dahingestellt... ich habe sie bei mir jedenfalls ausdokumentiert.

    #AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6 

    #Tidy_Parameters=/gd /gds /sf

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™