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

  • Funktions Deklaration?

    • Bitnugger
    • 14. Juni 2017 um 10:54

    Dazu musst du folgende Dateien editieren bzw. anlegen, falls sie nicht existieren:

    @LocalAppDataDir & '\AutoIt v3\SciTE\au3.keywords.user.abbreviations.properties'
    @LocalAppDataDir & '\AutoIt v3\SciTE\au3UserAbbrev.properties'
    @LocalAppDataDir & '\AutoIt v3\SciTE\au3.user.calltips.api'

    Bei mir wäre das z. B.:
    'C:\Users\Bitnugger\AppData\Local\AutoIt v3\SciTE\au3.keywords.user.abbreviations.properties'
    'C:\Users\Bitnugger\AppData\Local\AutoIt v3\SciTE\au3UserAbbrev.properties'
    'C:\Users\Bitnugger\AppData\Local\AutoIt v3\SciTE\au3.user.calltips.api'

    Im Anhang findest du ein ZIP-Archiv mit meinen Dateien, damit du in etwa sehen kannst, wie der Inhalt ausehen muss...

    Mit dem User Call Tip Manager in SciTE...
    CallTips.png

    Dateien

    SciTE.zip 5,15 kB – 212 Downloads
  • Grafische Darstellung von Messwerten

    • Bitnugger
    • 14. Juni 2017 um 10:36
    Zitat von Frost0071

    Ehrlich gesagt ist mir nicht so recht klar was Du jetzt hier von mir willst

    Lies dir einfach den Text von mir aus Post #28 noch mal gut durch und wenn du dazu noch Fragen oder Änderungswünsche hast, kannst du sie äußern, bevor ich alles fertig habe.

    Wenn aber soweit alles ok ist, dann mache ich es so wie beschrieben und anschließend können wir dann noch mal darüber reden, ob noch Änderungen nötig sind. :D

  • Lautstärke einstellen Windows - SoundSetWaveVolume - Bass udf

    • Bitnugger
    • 14. Juni 2017 um 10:24
    Zitat von alpines

    Switch the system volume between the mute and normal state. nircmd.exe mutesysvolume 2

    Jeep, habe es schon geändert...
    _MuteSysVolume(2)

    Die Tage werde ich die _SetSysVol.au3 noch erweitern... kann ich selbst auch sehr gut gebrauchen. :D

  • Lautstärke einstellen Windows - SoundSetWaveVolume - Bass udf

    • Bitnugger
    • 14. Juni 2017 um 10:07

    In Zeile 3 muss lediglich der Pfad zur nircmd.exe angepasst werden.

    _SetSysVol.au3
    AutoIt
    ;-- TIME_STAMP   2017-06-14 15:15:04   v 1.1
    
    
    Global $g_sNIRCMD = (@OSArch = 'X64') ? 'F:\Progdir\NirSoft Utilities\x64\nircmd.exe' : 'F:\Progdir\NirSoft Utilities\nircmd.exe'
    
    
    ; #FUNCTION# ====================================================================================================================
    ; Name ..........: _ChangeSysVolume
    ; Description ...:
    ; Syntax ........: _ChangeSysVolume($vVolume)
    ; Parameters ....: $vVolume             - a variant value.
    ;                                         Volume in percent: min. = 0%, max. = 100%
    ;                                         Volume in integer: min. = 0, max. = 65535
    ; Return values .: Success: the exit code from nircmd.exe
    ;                  Failure: 0 and sets the @error flag to non-zero
    ; Author ........: Bitnugger
    ; Modified ......:
    ; Remarks .......:
    ; Related .......:
    ; Link ..........:
    ; Example .......: Yes
    ; _ChangeSysVolume('80%')
    ; _ChangeSysVolume(25600)
    ; ===============================================================================================================================
    Func _ChangeSysVolume($vVolume)
    	Switch True
    		Case FileExists($g_sNIRCMD) = 0
    			MsgBox(262160, 'Error', 'nircmd.exe not found...')
    			Return SetError(1, 0, 0)
    		Case StringInStr($vVolume, '%') > 0
    			$vVolume = Int($vVolume)
    			If StringIsDigit($vVolume) = 0 Or $vVolume < 0 Or $vVolume > 100 Then
    				MsgBox(262160, 'Error', '$vVolume is out of range (0% - 100%) --> ' & $vVolume)
    				Return SetError(2, 0, 0)
    			EndIf
    			$vVolume *= 65535 / 100
    		Case StringIsDigit($vVolume) = 0 Or $vVolume < 0 Or $vVolume > 65535
    			MsgBox(262160, 'Error', '$vVolume is out of range (0 - 65535) --> ' & $vVolume)
    			Return SetError(3, 0, 0)
    	EndSwitch
    
    
    	Return RunWait(StringFormat('"%s" %s %i', $g_sNIRCMD, 'setsysvolume', $vVolume), '', @SW_HIDE, $STDOUT_CHILD)
    EndFunc   ;==>_ChangeSysVolume
    
    
    ; #FUNCTION# ====================================================================================================================
    ; Name ..........: _MuteSysVolume
    ; Description ...:
    ; Syntax ........: _MuteSysVolume([$iState = 2])
    ; Parameters ....: $iState              - [optional] an integer value. Default is 2.
    ;                                         1 = Mute the system volume
    ;                                         0 = Unmute the system volume
    ;                                         2 = Switch the system volume between the mute and normal state
    ; Return values .: Success: the exit code from nircmd.exe
    ;                  Failure: 0 and sets the @error flag to non-zero
    ; Author ........: Bitnugger
    ; Modified ......:
    ; Remarks .......:
    ; Related .......:
    ; Link ..........:
    ; Example .......: Yes
    ; _MuteSysVolume()
    ; _MuteSysVolume(1)
    ; ===============================================================================================================================
    Func _MuteSysVolume($iState = 2)
    	Switch True
    		Case FileExists($g_sNIRCMD) = 0
    			MsgBox(262160, 'Error', 'nircmd.exe not found...')
    			Return SetError(1, 0, 0)
    		Case $iState = 0 Or $iState = 1 Or $iState = 2
    			Return RunWait(StringFormat('"%s" %s %i', $g_sNIRCMD, 'mutesysvolume', $iState), '', @SW_HIDE, $STDOUT_CHILD)
    		Case Else
    			MsgBox(262160, 'Error', '$iState is out of range (0, 1 or 2)')
    			Return SetError(2, 0, 0)
    	EndSwitch
    EndFunc   ;==>_MuteSysVolume
    Alles anzeigen


    Zitat von AutoMit

    in Abhängigkeit davon, welcher Wert vorher eingestellt war (0 oder 100)

    Das geht auch mit der nircmd.exe...
    _MuteSysVolume(2)

  • Problem mit Endlosschleife...

    • Bitnugger
    • 14. Juni 2017 um 07:11

    Wenn du das Script mit der Codepage 65001 (UTF8 mit BOM) gespeichert hast und SciTE so eingestellt ist, dass Ein-/Ausgaben mit eben dieser Codepage gemacht werden sollen, muss du den Text zumindest für die Ausgabe in der CMD konvertieren (OEM 850). In SciTE sollte das aber eigentlich ohne funktionieren, was es bei mir aber nicht tut.... :cursing:

    Edit: Jetzt habe ich die Einstellungen in der Datei SciTEUser.properties deaktiviert und siehe da... für die Ausgabe in SciTE geht es nun ohne mein Zutun... dann muss ich nur noch für die Ausgabe in der CMD, wenn das Script kompiliert ist, konvertieren. Die Scite-Console kann demach also nichts mit UTF-8 anfangen...

    Brainfuck
    # Internationalisation
    # Unicode
    # code.page=65001
    # output.code.page=65001
  • Problem mit Endlosschleife...

    • Bitnugger
    • 14. Juni 2017 um 06:35

    Danke, aber das habe ich bereits gemacht... nicht wie fälschlicherweise auf der Seite beschrieben, in der Datei SciTEGlobal.properties, sondern in der Datei SciTEUser.properties.

    Ich habe die SciTE Version 3.7.3 installiert...

    Brainfuck
    # Internationalisation
    # Unicode
    code.page=65001
    output.code.page=65001


    UTF-8.png

    AutoIt
    #include <WinAPI.au3>
    
    
    HotKeySet('{ESC}', '_Exit')
    _CW('Bitte warten... bin gleich fertig...' & @CRLF) ; lol
    Global $iOld = 0, $iTimer = TimerInit(), $iDiff = 0
    
    
    For $i = 9.007199254e+15 To 2^53
    	If $i = $iOld Then
    		_CW('Größte Zahl = ' & $i & @CRLF)
    		ExitLoop
    	EndIf
    	If TimerDiff($iTimer) - $iDiff > 250 Then $iDiff = (ToolTip($i) -1) + TimerDiff($iTimer)
    	$iOld = $i
    Next
    _CW('Ich bin der Größte!!! ;-)' & @CRLF)
    
    
    Func _CW($sText)
    	If @Compiled Then
    		ConsoleWrite(_WinAPI_WideCharToMultiByte($sText, 1) & @CRLF) ; Ausgabe in der CMD mit OEM 850 Codepage
    	Else
    		ConsoleWrite(_WinAPI_WideCharToMultiByte($sText, 65001) & @CRLF) ; Ausgabe in SciTE mit UTF-8 Codepage
    	EndIf
    EndFunc
    
    
    Func _Exit()
    	Exit
    EndFunc
    Alles anzeigen
  • Listview-Datenbank v3

    • Bitnugger
    • 14. Juni 2017 um 06:13

    Folgende Zeilen...

    AutoIt
    For $i = 0 To $iColCount - 1 ; alle Eingabefelder durchgehen
    		GUICtrlDelete($aidInput[$i]) ; die Eingabefelder und
    		GUICtrlDelete($aidLabel[$i]) ; die Label dazu loeschen
    	Next


    durch diese ersetzen...

    AutoIt
    For $i = 0 To $iColCount - 1 ; alle Eingabefelder durchgehen
    		If $i = 1 Then
    			_GUICtrlIpAddress_Destroy($aidInput[$i])
    		Else
    			GUICtrlDelete($aidInput[$i]) ; die Eingabefelder und
    		EndIf
    		GUICtrlDelete($aidLabel[$i]) ; die Label dazu loeschen
    	Next
  • Problem mit Endlosschleife...

    • Bitnugger
    • 14. Juni 2017 um 05:55

    Hehe, sehr schön... aber nun stimmt ja die Aussage nicht mehr, dass ich der Größte bin. :D

    Da ich bei mir in SciTE nur noch mit "UTF-8 mit BOM" hantiere, musste ich noch eine kleine Änderung vornehmen, damit die Umlaute in der Console korrekt dargestellt wird...

    AutoIt
    #include <WinAPI.au3>
    
    
    HotKeySet('{ESC}', '_Exit')
    _CW('Bitte warten... bin gleich fertig...' & @CRLF) ; lol
    Global $iOld = 0, $iTimer = TimerInit(), $iDiff = 0
    
    
    For $i = 9.007199254e+15 To 2^53
    	If $i = $iOld Then
    		_CW('Größte Zahl = ' & $i & @CRLF)
    		ExitLoop
    	EndIf
    	If TimerDiff($iTimer) - $iDiff > 250 Then $iDiff = (ToolTip($i) -1) + TimerDiff($iTimer)
    	$iOld = $i
    Next
    _CW('Ich bin der Größte!!! ;-)' & @CRLF)
    
    
    Func _CW($sText)
    	ConsoleWrite(_WinAPI_WideCharToMultiByte($sText, 65001) & @CRLF)
    EndFunc
    
    
    Func _Exit()
    	Exit
    EndFunc
    Alles anzeigen
  • Problem mit Endlosschleife...

    • Bitnugger
    • 14. Juni 2017 um 03:42

    Ich habe das gerade mal getestet... und zu meinem Erstaunen hat es NICHT wie erwartet funktioniert!

    Es ist aber definitiv eine Endlosschleife, denn $i bleibt einfach bei 9e307 stehen bleibt... :D

    AutoIt
    ConsoleWrite('Bitte warten... bin gleich fertig...' & @CRLF) ; lol
    For $i = 9e307 To 9e999 Step 1
    	If $i > 9e307 Then ConsoleWrite('$i > ' & $i & @CRLF)
    	If $i < 9e307 Then ConsoleWrite('$i < ' & $i & @CRLF)
    	If $i = 9e307 Then ConsoleWrite('$i = ' & $i & @CRLF)
    Next
    ConsoleWrite('Ich bin der Größte!!! ;-)' & @CRLF)

    Endlosschleife 9e999.png

  • Problem mit Endlosschleife...

    • Bitnugger
    • 14. Juni 2017 um 00:09
    Zitat von alpines

    also kriegst du trotzdem von mir eine ernstgemeinte Antwort.

    die ich auch zu schätzen weiß... :)

    PS: Ob ich die Ausgabe von ConsoleWrite zu meinen Lebzeiten noch sehen werde, ist aber fraglich?! :D

  • Problem mit Endlosschleife...

    • Bitnugger
    • 14. Juni 2017 um 00:02

    Meine Frage war eigentlich als kleiner Scherz gedacht... aber mal gut, dass ich es getan habe... so habe ich wieder was Neues gelernt... 9e999... hm! :D

  • Problem mit Endlosschleife...

    • Bitnugger
    • 13. Juni 2017 um 23:47

    Warum funktioniert das nicht?

    AutoIt
    For $i = 0 To ∞ Step 1
    	If $i > ∞ Then ConsoleWrite('Ich bin der Größte!!! ;-)' & @CRLF)
    Next


    :D

  • Benötige Infomaterial für Anfänger - Bearbeiten von Textdateien

    • Bitnugger
    • 13. Juni 2017 um 23:17

    Ergänzung zu dem was @autoiter in den Kommentaren zu seinen Example geschrieben hat...

    Zitat von autoiter

    Local $hFileOpen = FileOpen(@ScriptDir & "\Ergebnis.txt", $FO_OVERWRITE) ; Schreibst du häufiger in eine Datei, ist es sinnvoll,
    ; die Datei mit der Funktion FileOpen zu öffnen/erstellen und mit dem handle weiter zu arbeiten.

    Zusätzlich hat es den Vorteil, dass man die Codepage angeben kann, in der die Daten gespeichert werden... Default (ohne FileOpen) ist UTF8 (without BOM)

    Wenn du also Textdateien speichern willst, die im Normalfall unter Windows mit der Codepage 1252 (ANSI) angelegt werden, ist ein FileOpen auf jeden Fall eine gute Idee.

    Local $hFileOpen = FileOpen($sFilePath, BitOR(FO_READ, $FO_ANSI)) ; einzulesende Datei wurde mit der Codepage 1252 (ANSI) gespeichert und soll auch mit dieser geöffnet werden...
    Local $hFileOpen = FileOpen($sFilePath, BitOR(FO_OVERWRITE, $FO_ANSI)) ; die Datei soll mit der Codepage UTF-8 ohne BOM (65001) gespeichert werden...
    Local $hFileOpen = FileOpen($sFilePath, BitOR(FO_READ, $FO_BINARY)) ; die Datei soll als Binärdatei (z. B. *.dll, *.exe) eingelesen werden...

  • Benötige Infomaterial für Anfänger - Bearbeiten von Textdateien

    • Bitnugger
    • 13. Juni 2017 um 22:39
    _Example
    AutoIt
    ;-- TIME_STAMP   2017-06-13 22:37:32   v 0.1
    
    
    #Region ;************ Includes ************
    #include <File.au3>
    #EndRegion ;************ Includes ************
    
    
    _Example()
    
    
    Func _Example()
    	Local $sFile = FileOpenDialog('Datei öffnen...', @ScriptDir, 'Text (*.txt;*.ini)', $FD_FILEMUSTEXIST)
    	If @error Then Exit 1
    
    
    	Local $aArray = FileReadToArray($sFile), $aOut[0]
    	_ArrayDisplay($aArray, '$aArray')
    
    
    	For $i = 0 To UBound($aArray) - 1 Step 1
    		If StringInStr($aArray[$i], 'disabled=no') Then
    			ConsoleWrite('$i + 2 (' & $i + 2 & ') >= UBound($aArray) (' & UBound($aArray) & ')' & @CRLF)
    			If $i + 2 >= UBound($aArray) Then ExitLoop ; Es gibt keine übernächste Zeile!
    			_ArrayAdd($aOut, StringMid($aArray[$i + 2], 1, StringInStr($aArray[$i + 2], ' ')))
    		EndIf
    	Next
    
    
    	; Haben wir etwas in $aOut? Wenn ja, dann Ergebnis in Datei speichern!
    	If UBound($aOut) Then
    		; Inhalt von $aOut als Array anzeigen...
    		_ArrayDisplay($aOut, '$aOut')
    
    
    		; Inhalt von $aOut mit einer MessageBox anzeigen...
    		Local $sOut = ''
    		For $i = 0 To UBound($aOut) - 1
    			$sOut &= 'enable ' & $aOut[$i] & @CRLF
    		Next
    		MsgBox(0, 'Ausgabe', $sOut)
    
    
    		; Inhalt von $aOut in der Console ausgeben...
    		ConsoleWrite(_ArrayToString($aOut, @CRLF) & @CRLF)
    
    
    		; Ergebnis aus $aOut in Datei speichern...
    		Local $sSaveResultAs = FileSaveDialog('Ausgabe in Datei speichern...', @ScriptDir, 'All (*.txt)', BitOR($FD_PATHMUSTEXIST, $FD_PROMPTOVERWRITE))
    		If @error Then Exit 3 ; Keine Datei zum Speichern angegeben...
    		_FileWriteFromArray($sSaveResultAs, $aOut)
    	EndIf
    EndFunc   ;==>_Example
    Alles anzeigen

    PS: AutoIt ist kein "Tool", sondern eine Scriptsprache. :D

    @autoiter
    Mach das noch 27 mal und wir sind keine Freunde mehr... :P

  • Bildschirmaktualisierung ohne Flackern

    • Bitnugger
    • 13. Juni 2017 um 21:37
    Zitat von AutoItler

    ich habe mal nach weiteren Beiträgen im Forum von Dir gesucht und habe feststellen müssen, dass die meisten davon genauso "gewinnbringend" waren wie Deine Kommentare zu meinem Thema.

    Nun, da bin ich aber anderer Meinung... zudem würde ich behaupten, dass es hier keinen einzigen User gibt, der nur gewinnbringende Beiträge schreibt, aber so ziemlich jeder seinen Senf dazu gibt, um einen konstruktiven Beitrag zu leisten. Ich habe auch schon viele Beträge von @autoiter gesehen und meine, dass die meisten davon hilfreich sind oder zumindest eine Weg aufzeigen, wie das Problem gelöst werden kann. Zudem denke ich, dann man sich solche Kommentare besser verkneifen sollte, da sie nur nachteilige Auswirkungen haben... das gilt für euch Beide!

  • u. a. Datensatz/-sätze mit | getrennt in eine *.txt speichern.

    • Bitnugger
    • 13. Juni 2017 um 21:15

    Ops... ich sehe gerade, dass mein hinzugefügter Eintrag im Kontextmenü des ListViews unnötig ist, da er bereits vorhanden ist... "Lösche Buchinfos" - habe den glatt übersehen. :D

    Habe deshalb die von mir hinzugefügte Funktion im vorherigen Post so geändert, dass die NICHT ausgewählten Bücher aus DB gelöscht werden können...

  • u. a. Datensatz/-sätze mit | getrennt in eine *.txt speichern.

    • Bitnugger
    • 13. Juni 2017 um 20:44

    Im Anhang findest du die von mir bearbeitete Version mit Kommentaren als ZIP-Archiv... hoffe damit sind alle Klarheiten beseitigt... :D

    ***************************************************************************
    _GUICtrlListView_GetItemTextArray($MainGui_ListView, $aSelectedIndices[$i])
    ***************************************************************************
    Row|Col 0
    [0]|10
    [1]|1 ... wenn man sich die ID (hier die 1) im Listview anzeigen lässt, wird sie wie gewünscht auch 1x angezeigt, ist dann aber (wie hier zu sehen) 2x vorhanden!
    [2]|1 ... in Spalte 1 und in Spalte 2... sehr verwirrend und meiner Meinung nach auch falsch! Siehe dazu auch bei ***1
    [3]|Der Hund jagt die Katze
    [4]|Bruno Wolf
    [5]|01.04.2004
    [6]|Lustige Kindergeschichten
    [7]|271
    [8]|
    [9]|Ja
    [10]|Die Bücher von Bruno Wolf sind wärmstens zu empfehlen!

    $aItem[3] = "Der Hund jagt die Katze"

    ****************************************************************************
    _GUICtrlListView_GetItemTextString($MainGui_ListView, $aSelectedIndices[$i])
    ****************************************************************************
    Row|Col 0
    [0]|1|1|Der Hund jagt die Katze|Bruno Wolf|01.04.2004|Lustige Kindergeschichten|271||Ja|Die Bücher von Bruno Wolf sind wärmstens zu empfehlen!

    $aBestellliste1[$i -1] = "1|1|Der Hund jagt die Katze|Bruno Wolf|01.04.2004|Lustige Kindergeschichten|271||Ja|Die Bücher von Bruno Wolf sind wärmstens zu empfehlen!"

    ***************************************************************************************************************
    _SQLite_GetTable2d($SQL_DATABASE,'SELECT * FROM Buchverwaltung WHERE ID = ' & $i,$sqlData,$sqlRows,$sqlColumns)
    ***************************************************************************************************************
    Row|Col 0|Col 1|Col 2|Col 3|Col 4|Col 5|Col 6|Col 7|Col 8|Col 9|Col 10|Col 11|Col 12|Col 13|Col 14|Col 15|Col 16|Col 17|Col 18|Col 19|Col 20
    [0]|ID|Titel|Autor|Verlag|Erscheinungsdatum|Genre|Preis|Einband|ISBN|Seiten|Lagerplatz|Serie|Bestellt|Gelesen|Note|Zusatz|Information|Ausgeliehen_an|Ausgeliehen_am|Ausgeliehen_bis|LfdNr
    [1]|1|Der Hund jagt die Katze|Bruno Wolf|Erika Katzenberger|01.04.2004|Lustige Kindergeschichten|4,99|Ja|978-3-44780-192-4|271|RAZ42873319|||Ja||Für Kinder ab 8 Jahre|Die Bücher von Bruno Wolf sind wärmstens zu empfehlen!||||1

    $sqlData[1][1] = "Der Hund jagt die Katze"


    ***1
    Es liegt daran, weil bereits beim Erstellen des ListViews eine Spalte für die ID erzeugt wird, diese aber nicht sichtbar ist, weil die Spaltenbreiste auf 0 gesetzt wurde.
    Will man sich nun die ID anzeigen lassen, wird nochmals eine Spalte für die ID eingefügt - und ist dann 2x vorhanden. Die neue hinzugefügte Spalte wird dann sichtbar, die andere bleibt weiterhin unsichtbar, weil diese ja immer noch eine Spaltenbreite von 0 hat.

    Richtig wäre, bereits beim Erstellen des ListViews alle Spalten zu erzeugen (so wie sie in der DB sind) und die Spaltenbreite der auszublendenden Spalten dann einfach auf 0 zu setzen. Will man später dann Spalte/n einblenden/ausblenden, braucht man nur die Spaltenbreite entsprechend ändern.

    Ausblenden...
    _GUICtrlListView_HideColumn($MainGui_ListView, <SpaltenIndex>) ; die Spaltenbreite wird auf 0 gesetzt

    Einblenden...
    _GUICtrlListView_SetColumnWidth($MainGui_ListView, <SpaltenIndex>, $iWidth) ; die Spaltenbreite auf $iWidth setzten


    Um das jetzt in diesem Script zu ändern, fehlt mir momentan die Zeit... und auch ein wenig die Lust, weil das Script nicht gerade änderungsfreundlich geschrieben wurde... in ein paar Wochen evtl. mal.


    ID-Error.png

    Dateien

    Buchverwaltung.zip 158,43 kB – 234 Downloads
  • Kleines Desktop-Spiel (ChipHunter)

    • Bitnugger
    • 13. Juni 2017 um 18:33

    Wenn du so weitermachst, wird es womöglich noch das "Best Game of the Year 2017"... :D

  • Beispiel.exe verhindert einen Neustart, Lösungsansatz?

    • Bitnugger
    • 13. Juni 2017 um 18:17

    @BLinz :)
    Ich hatte auf deinen Beitrag reagiert, weil du explizit hervorgehoben hast, dass shutdown einen "korrekten" Exit-Code liefert.

    Ich kann ich an keiner Stelle in diesem Thread einen Hinweis darauf finden, dass er "das andere Programm" abbrechen will - er will nur wissen, wie er den Exit-Code von shutdown weiterverwerten kann.

    Vorwarnzeit... hier stupse ich dich nochmal auf den Text, den ich zu Broadcast-Message geschrieben habe:

    Zitat von Bitnugger

    Windows sendet eine Broadcast-Message an alle Prozesse, damit sie sich beenden. Wenn der Installer oder ein anderes Programm den Neustart blockieren, kann er bei Bedarf mit seinem Script darauf reagieren und mit Shutdown nach x Sekunden den Neustart erzwingen.

    Sobald sein Script die Message bekommt, wird die Funktion _Exit aufgerufen, in der er mit dem Makro @exitCode ermitteln kann, was Sache ist. Der Countdown für eine evtl. vorhande Vorwarnzeit wird erst nach Versenden der Message gestartet.

    Beides zu machen ist definitiv nicht die beste Lösung... es zeigt nur auf, dass alle möglichen Varianten ins Spiel gebracht werden, weil man nicht weiß, welche besser/korrekt funktioniert.

    Desweiteren bin ich der Meinung, dass "Polling" (AdlibRegister) in seinem Fall eine unfeine Lösung ist, zumal er mit der nativen Lösung (OnAutoItExitRegister) ohne weiters Zutun den Exit-Code auswerten kann.

  • u. a. Datensatz/-sätze mit | getrennt in eine *.txt speichern.

    • Bitnugger
    • 13. Juni 2017 um 03:16

    Ich bin dabei, dir dafür ein paar Zeilen in dein Script einzubauen... habe auch ein paar Fehler gefunden... kommt morgen im Laufe des Tages.

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™