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

Beiträge von jjj

  • Script kurzzeitig schützen

    • jjj
    • 3. Januar 2014 um 14:03

    Leider kenne ich micht mit dem ganzen DLL Zeug nicht aus und hab auch hier somit keinen Plan, wie das geht. ?(
    Wär ntt, wenn das jemand für mich machen könnte:

  • Button drücken ohne MouseClick-Funktion

    • jjj
    • 3. Januar 2014 um 11:16

    Hilft dir das:

    [autoit]

    _IEGetObjById
    ;und
    _IEAction

    [/autoit]

    ?

  • Script kurzzeitig schützen

    • jjj
    • 3. Januar 2014 um 10:59

    Hab mir den Link durchgelesen, ich glaube, ich hab das Prinzip verstanden, aber ich hab keinen Plan, wie man das in AutoIt umsetzt. Wär nett, wenn das jemand hier einbauen könnte:

    [autoit]

    #include <Security.au3>
    #include <WinAPI.au3>

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

    #RequireAdmin

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

    ;Debug-Privlegien holen...
    Local $hToken = _Security__OpenProcessToken(_WinAPI_GetCurrentProcess(), $TOKEN_ALL_ACCESS)
    _Security__SetPrivilege($hToken, $SE_DEBUG_NAME, True)
    _WinAPI_CloseHandle($hToken)

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

    ;Escape-Funktion registrieren
    HotKeySet("{ESC}", "_Escape")

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

    ;Critical-Flag auf <TRUE> setzen
    _WinAPI_SetProcessIsCritical(True)

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

    ;Hauptschleife
    While True
    Sleep(20)
    WEnd

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

    Func _Escape()
    ;Critical-Flag auf <FALSE> setzen
    MsgBox(0, "", _WinAPI_SetProcessIsCritical(False))
    Exit
    EndFunc

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

    Func _WinAPI_SetProcessIsCritical($bState)
    $avReturn = DllCall("ntdll.dll", "int:cdecl", "RtlSetProcessIsCritical", "boolean", $bState, "ptr", 'none', "boolean", False)
    Return $avReturn[0]
    EndFunc

    [/autoit]

    Danke

  • Script kurzzeitig schützen

    • jjj
    • 2. Januar 2014 um 20:22

    Und wie geht das?

  • Script kurzzeitig schützen

    • jjj
    • 2. Januar 2014 um 16:25

    Hatte ich versucht, ging aber nicht. Hab dann wahrscheinlich die " vergessen , oder so.

    Trotzdem sollte da eine MsgBox kommen, das Problem ist, dass iich als Admin angemeldet bin.

  • Script kurzzeitig schützen

    • jjj
    • 2. Januar 2014 um 15:19

    Danke,
    Problem fast gelöst. Es wäre gut, wenn nicht gleich der ganze PC abkratzen würde, wenn man des Progamm versucht zu beenden. So ist es dann ja auch geschlossen, und die Daten sind Weg.
    Geht es nicht irgendwie, dass einfach nur eine MsgBox kommt, von wegen "Kann nicht beendet werden" und dann läuft alles normal weiter?

  • Script kurzzeitig schützen

    • jjj
    • 2. Januar 2014 um 14:23

    Danke für die ganzen Antworten, werde das gleicht mal einbauen.

    Ich hab das Scripte von chesstiger mal getestet, aber da kommt immer eine Fehlermeldung in Z. 29: $avReturn = DllCall("ntdll.dll", "int:cdecl", "RtlSetProcessIsCritical", "boolean", $bState, "ptr", Null^ ERROR
    Missing separator character after keyword.
    Weiß jeman, warum, bzw. wie man das beheben kann?

  • Script kurzzeitig schützen

    • jjj
    • 1. Januar 2014 um 16:05

    Ich kann versichern, dass das kein Virus ist
    Und danke, ich habs jetzt so gelöst, dass der Aktuelle schritt in einer Variablen steht und die Funktion bei OnAutoItExitRegister das dann zu Ende führt.
    Ist aber nicht gerade schön.

  • Script kurzzeitig schützen

    • jjj
    • 1. Januar 2014 um 15:35

    dafür müssen dann aber alle Variablen Global sein, oder geht das auch anders?

  • Script kurzzeitig schützen

    • jjj
    • 1. Januar 2014 um 15:14

    Danke, aber das Problem mit dieser Funktion ist, dass der geschützte Teil von Anfang bis Ende durchlaufen soll. Mit OnAutoItExitRegister startet man doch nur eine registrierte Funktion, oder irre ich mir da? Oder kann man da reinschreiben, dass das Script fortgesetzt werden soll?

  • Script kurzzeitig schützen

    • jjj
    • 1. Januar 2014 um 14:56

    Hallo zusammen und Frohes Neues,
    ich hab ein Script, dass vor dem Schließen geschützt werden soll. Egal ob durch den Taskmanger, über die CMD, oder durch das Herunterfahren des PCs. Das Script läuft in einer Endlosschleife und zwischendrin gibt es einen Bereich, in dem einige Daten nur in den Variablen des programms gespeichert sind. In diesem bereich sollte es nicht geschlossen werden können, sondern erst wieder wenn alle daten wieder in anderen dateien gesichert sind. Es sollte zuminset eine Nachfrage kommen, ob es wirklich beendet werden soll.
    Ich hoffe, ihr versteht, was ich meine.

    Schonmal Danke im Vorraus.

  • TCP Chat Extras

    • jjj
    • 6. November 2013 um 16:16

    Danke für die Tipps, ich denke, ich bekomme das jetzt hin.

  • TCP Chat Extras

    • jjj
    • 6. November 2013 um 09:12

    ok, danke
    mit InetGet kann ich das natürlich machen, nur soll es auch gehen, wenn man alles innerhalb eines Netzwerkes macht.
    Kann man dafür, um die dateien prarllel hoch- bzw. runterzuladen die Funktion mit AdlibRegister aufrufen und zu Beginn AdlibUnRegister in die Funktion schreiben?

  • TCP Chat Extras

    • jjj
    • 4. November 2013 um 09:32

    Wie kann man denn eine Funktion aufrufen, ohne dass auf die Beendigung gewartet wird. Damit man normal weiter machen kann, wärend gedownloadet wird.

  • TCP Chat Extras

    • jjj
    • 3. November 2013 um 16:48

    Man kann das nicht so einfach Rückwärts machen, weil man die Datei ja noch auswählen muss.
    Aber Trotzdem danke.

  • Keine E-Mail Benachrichtigung 2

    • jjj
    • 2. November 2013 um 20:48

    Du kannst Threads abbonieren, dann bekommst du alles per EMail.

  • TCP Chat Extras

    • jjj
    • 2. November 2013 um 15:41

    Da hat die Tastatur wohl ein bisschen was verschluckt.
    Ist geändert.

  • TCP Chat Extras

    • jjj
    • 2. November 2013 um 15:18

    Hallo zusammen,
    ich hab mal einen Chat geschrieben und will noch ein par Extras einbauen.
    Der Chat funktioniert wunderbar, nur stehe ich bei der Umstzung der Extras ziemlich auf dem Schlauch.
    Der Client:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <EditConstants.au3>

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

    $gui = GUICreate(@UserName, 850, 300)
    GUISetFont(11, 700, 1, "Lucida Console")
    $Edit1 = GUICtrlCreateEdit("", 0, 0, 650, 250, $ES_READONLY+$WS_VSCROLL+$ES_MULTILINE)
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xffffff)
    $Input1 = GUICtrlCreateEdit("", 0, 250, 550, 50, $ES_AUTOVSCROLL+$ES_WANTRETURN)
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xffffff)
    $button = GUICtrlCreateButton("hohladen", 550, 250, 100, 25)
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xffffff)
    $button2 = GUICtrlCreateButton("ruterladen", 550, 275, 100, 25)
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xffffff)
    $list = GUICtrlCreateList("", 650, 0, 200, 310)
    GUICtrlSetBkColor(-1, 0x000000)
    GUICtrlSetColor(-1, 0xffffff)
    GUISetState()
    GUISetBkColor(0x000000)

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

    $dummy = GUICtrlCreateDummy()
    Dim $AccelKeys[1][2]=[["{Enter}", $dummy]]
    GUISetAccelerators($AccelKeys)

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

    TCPStartUp()
    $Socket = TCPConnect(@IPAddress1,3333)
    If @error Then Exit
    $SocketDatei = TCPConnect(@IPAddress1,3334)
    If @error Then Exit

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

    While sleep(10)
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $dummy
    _Senden()
    Case $button
    _DateiSenden()
    EndSwitch
    _Empfangen()
    WEnd

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

    Func _Empfangen()
    $Message = TCPRecv($Socket,2048)
    If $Message <> "" Then
    GUICtrlSetData($Edit1, GUICtrlRead($Edit1) & @crlf & $Message)
    EndIf
    EndFunc

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

    Func _Senden()

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

    If GUICtrlRead($Input1) <> "" Then TCPSend($Socket,"<" & @UserName & "> "& GUICtrlRead($Input1))
    GUICtrlSetData($Input1, "")
    EndFunc

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

    Func _DateiSenden()
    $filep = FileOpenDialog ("Datei wäheln", @DesktopDir, "(*.*)" )
    If $filep <> "" Then
    $file = FileRead($filep)
    $name = StringSplit($filep , "")
    $name1 = $name[$name[0]]
    While StringLen($name1) < 2048
    $name1 = $name1 & "_"
    WEnd
    $bin = StringToBinary($file)
    TCPSend($SocketDatei, $name1)
    While $file <> ""
    $r = StringLeft($file, 2048)
    $file = StringTrimLeft($file, 2048)
    TCPSend($SocketDatei, $r)
    WEnd
    TCPSend($Socket, "<Datei von " & @UserName & "> " & $name[$name[0]])
    EndIf
    EndFunc

    [/autoit]


    Der Server:

    Spoiler anzeigen
    [autoit]

    ;Server
    Global $MaxConnect = 50

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

    TCPStartup() ; TCP starten
    $Socket = TCPListen(@IPAddress1, 3333, $MaxConnect)

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

    Dim $Verbindung[$MaxConnect]
    For $i = 0 To UBound($Verbindung) - 1
    $Verbindung[$i] = -1
    Next

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

    While 1
    For $i = 0 To $MaxConnect - 1
    If $Verbindung[$i] = -1 Then
    $Verbindung[$i] = TCPAccept($Socket)
    TCPSend($Verbindung[$i], "Willkommen im Chat")
    EndIf

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

    If $Verbindung[$i] <> -1 Then
    $Resv = TCPRecv($Verbindung[$i], 2048)
    If @error Then
    TCPCloseSocket($Verbindung[$i])
    $Verbindung[$i] = -1
    EndIf

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

    If $Resv <> "" Then
    For $j = 0 To $MaxConnect - 1
    If $Verbindung[$j] <> -1 Then TCPSend($Verbindung[$j], $Resv)
    Next
    EndIf

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

    EndIf
    Next
    WEnd

    [/autoit]


    Der Server zum hochladen von Dateien:

    Spoiler anzeigen
    [autoit]

    ;Server für dateien
    Global $MaxConnect = 50

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

    TCPStartup() ; TCP starten
    $Socket = TCPListen(@IPAddress1, 3334, $MaxConnect)

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

    Dim $Verbindung[$MaxConnect]
    For $i = 0 To UBound($Verbindung) - 1
    $Verbindung[$i] = -1
    Next

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

    While 1
    For $i = 0 To $MaxConnect - 1
    If $Verbindung[$i] = -1 Then
    $Verbindung[$i] = TCPAccept($Socket)
    EndIf

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

    If $Verbindung[$i] <> -1 Then
    $Resv = TCPRecv($Verbindung[$i], 2048)
    If @error Then
    TCPCloseSocket($Verbindung[$i])
    $Verbindung[$i] = -1
    EndIf
    $name = $Resv
    While StringRight($name, 1) = "_"
    $name = StringTrimRight($name, 1)
    WEnd
    ConsoleWrite($name)
    While $Resv <> ""
    $Resv = TCPRecv($Verbindung[$i], 2048)
    $q = BinaryToString($Resv)
    FileWrite($name, $q)
    WEnd
    EndIf
    Next
    WEnd

    [/autoit]


    Was der Chat schon kann:
    -Mit bis zu 50 Teilnehmern schreiben
    -Dateien auf den Server laden

    Jetzt die Extras, die ich einbauen will:
    -in der Liste $list sollen alle Benutzernamen von Chatteilnehmern sein
    -es sollen zu Beginn alles vervügbaren IP-Adressen nach den Ports durchprobiert werden, damit man den Server überall starten kann, ohne die IP-Adresse zu ändern
    -beim Hochladen von dateien auf dn Server soll man ganz normal weiterchatten können, bisher muss man warten, bis die Datei vollsändig hohgeladen ist.
    -jeder soll die hochgeladenen Datein natürlich auch wieder runterladen können.

    Wie gesagt, ich stehe da irgendwie ziemlich auf dem Schlauch und hoffe, ihr könn mir helfen

  • Pc Herunterfahren

    • jjj
    • 27. Oktober 2013 um 14:50

    Ich das Script einfach mal kopiert und etwas geändert.

    Spoiler anzeigen
    [autoit]

    Global Const $DESKTOP_ENUMERATE = 0x40
    Global Const $SPI_GETSCREENSAVERRUNNING = 114
    Global Const $DESKTOP_SWITCHDESKTOP = 0x100

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

    While(sleep(60000))
    Local $p_lngHwnd, $p_lngRtn, $p_lngErr, $p_lngScreenSaver, $p_blnIsScreenSaver

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

    If @OSTYPE = "WIN32_WINDOWS" Then
    $p_lngHwnd = DllCall("user32.dll", "int", "OpenDesktopA", "str", "screen-saver", "int", 0, "int", False, "int", $DESKTOP_ENUMERATE)
    If $p_lngHwnd[0] <> 0 Then
    $p_blnIsScreenSaver = True
    Else
    $p_blnIsScreenSaver = False
    EndIf
    Else
    $p_lngRtn = DllCall("user32.dll", "int", "SystemParametersInfoA", "int", $SPI_GETSCREENSAVERRUNNING, "int", 0, "int", $p_lngScreenSaver, "int", 0)
    If Not $p_lngRtn[0] = 0 Then
    $p_blnIsScreenSaver = $p_lngScreenSaver
    EndIf
    EndIf

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

    If $p_blnIsScreenSaver Then
    If @OSTYPE = "WIN32_WINDOWS" Then
    $p_lngHwnd = DllCall("user32.dll", "int", "CloseDesktop", "int", $p_lngHwnd[0])
    EndIf
    Else
    $p_lngHwnd = DllCall("user32.dll", "int", "OpenDesktopA", "str", "Default", "int", 0, "int", False, "int", $DESKTOP_SWITCHDESKTOP)
    If Not $p_lngHwnd[0] = 0 Then
    $p_lngRtn = DllCall("user32.dll", "int", "SwitchDesktop", "int", $p_lngHwnd[0])
    If $p_lngRtn[0] = 0 Then
    If $p_lngErr = 0 Then
    Shutdown(4)
    Exit
    EndIf
    EndIf
    $p_lngHwnd = DllCall("user32.dll", "int", "CloseDesktop", "int", $p_lngHwnd[0])
    EndIf
    EndIf
    WEnd

    [/autoit]


    Funktioniert das so, wenn ich das um 10:00 Uhr mi der Aufgabenplanung ausführen lasse?

    Oder wie kann man das mit Windows machen?

  • Pc Herunterfahren

    • jjj
    • 27. Oktober 2013 um 14:40

    dass man den Pc um eine bestimmte Uhrzeit mit der Aufgebenplanung runterfahren kann weiß ich auch, aber es geht ja darum, dass ich nicht will , dass der runterfährt, wenn ich noch daran arbeite.
    Ich hatte auch vor, das Script mit der aAufgabnplanung auszuführen.

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™