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

Beiträge von SgtIgram

  • .exe Datei vor unbefugter Verbreitung schützen / FTP-Verbindung sicher aufbauen

    • SgtIgram
    • 1. Dezember 2013 um 01:24

    howdy...

    mal kurz ein paar lösungsmöglichkeiten..

    du könntest z.b. das zu schützende programm als child des hauptprogramms starten und dann die streams auslesen lassen damit die programme untereinander kommunizieren können.. sodass das hauptprogramm dann z.b. ein nur dir bekanntes passwort überträgt oder sowas.. sollte kein richtiges passwort übertragen werden binnen 5 sekunden, schließt sich das prog wieder bzw. zeigt von anfang an erst garnix an

    auch könntest du es so lösen das du den kompletten binarycode des zu schützenden programms ins hauptprogramm stopfst und dann direkt aus dem arbeitsspeicher ausführen lässt.. allerdings wird es nicht viele sachkundige geben die dem ganzen braten vertrauen ;D

    die letzte möglichkeit die mir spontan einfällt wäre ein key-system wo du das programm per inetget(binarytostring($url)) überprüfen lässt ob ein bestimmter key gültig ist.. wobei da die frage ist wie du den key speicherst.. simple in einer ini hinterlegt kann er ja einfach kopiert werden.. also entweder verschlüsselt in eine extra datei.. oder mit in die exe eingearbeitet.. was aber bedeutet das pro "kunde" eine neue exe kompiliert werden muss.. den key kannst du zusätzlich an bestimmte systemparameter binden damit sie nich einfach kopiert wird.. zusätzlich kannst du per keykontrolle(die du ja in kombination mit den obrigen optionen verwenden kannst) jederzeit einen key sperren.. ist eigentlich nur ein klein wenig php und vlt.(my)sql wissen erforderlich

    mfg
    sgtigram

  • Grafik Schneefall

    • SgtIgram
    • 29. November 2013 um 00:41

    wenn du nicht weiterkommst meld dich einfach per PN oder skype("sgtigram")

  • Grafik Schneefall

    • SgtIgram
    • 29. November 2013 um 00:28
    Spoiler anzeigen
    [autoit]

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

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

    Global $Count = 50
    Global $hGraphics
    Global $hImage
    Dim $aHandles[100][4]

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

    $hGUI = GUICreate("Grafik Schneefall", 615, 438, 196, 127)
    GUISetState(@SW_SHOW)

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

    _GDIPlus_Startup()

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

    ;Load Image
    $hImage = _GDIPlus_ImageLoadFromFile("snow.png")

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

    ;Zeige Grafik an
    $hGraphics = _GDIPlus_GraphicsCreateFromHWND($hGUI)

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

    $hBitmap = _GDIPlus_BitmapCreateFromGraphics(615, 438, $hGraphics)
    $hBuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    ;first run
    For $i = 1 To $Count
    _Bilderstellen($i, Random(0, 615), Random(1, 437))
    Next
    ;

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

    While 1
    _GDIPlus_GraphicsClear($hBuffer)
    _GDIPlus_GraphicsClear($hBitmap)
    _GDIPlus_GraphicsDrawImageRect($hBitmap, $hBuffer, 0, 0,615,438)

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

    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    _GDIPlus_GraphicsDispose($hGraphics)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_Shutdown()
    Exit

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

    EndSwitch
    Sleep(1)
    _Fall()

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

    _GDIPlus_GraphicsDrawImageRect($hGraphics, $hBitmap, 0, 0,615,438)

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

    WEnd

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

    Func _Bilderstellen($i, $x, $y)
    $aHandles[$i][1] = _GDIPlus_GraphicsDrawImageRect($hBuffer, $hImage, $x, $y, 40, 40)
    $aHandles[$i][2] = $x
    $aHandles[$i][3] = $y
    EndFunc ;==>_Bilderstellen

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

    Func _Fall()
    For $i = 1 To $Count
    For $a = $aHandles[$i][3] To 615
    _GDIPlus_GraphicsDrawImageRect($hBuffer, $hImage, $aHandles[$i][2], $a, 40, 40)
    $aHandles[$i][3] = $aHandles[$i][3]+1
    ExitLoop
    Next
    If $aHandles[$i][3] >= 438 Then _Bilderstellen($i, Random(0, 615), -40)
    Next
    EndFunc

    [/autoit]

    [Blockierte Grafik: http://www.cookie-technology.net/snow.png]

    //EDIT: hinweis.. direkt hierrüber ist eine schneeflockengrafik ;D

    //EDIT2: ehrlich gesagt hab ich wenn ich mir das so anschaue keine ahnung warum das funzt xD

    nicht drüber meckern wie schön es gemacht ist, ich bin müde, hungrig und durstig.. aber es funktioniert

    mfg
    sgtigram

  • Grafik Schneefall

    • SgtIgram
    • 28. November 2013 um 23:55

    weil sobald die erste flocke erstellt ist.. wird sie 615 mal bewegt.. und auch nur die y koordinate ändert sich(bis sie bei 615 angekommen ist).. was erklärt warum sie kerzengrade fällt..

  • Per Rechtsklickmenü AU3-Datei erstellen

    • SgtIgram
    • 28. November 2013 um 21:12

    howdy..

    erstell dir eine registry-datei(.reg) und füg folgendes per editor ein:

    Spoiler anzeigen

    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\.au3]
    @="AutoIt3Script"

    [HKEY_CLASSES_ROOT\.au3\ShellNew]

    [HKEY_CLASSES_ROOT\.au3\ShellNew]
    "NullFile"=""

    [HKEY_CLASSES_ROOT\AutoIt3Script]
    @="AutoIt v3 Script"

    [HKEY_CLASSES_ROOT\AutoIt3Script\DefaultIcon]
    @="D:\\Programme\\AutoIt3\\Icons\\au3script_v10.ico"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell]
    @="Run"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Compile]
    @="Compile Script"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Compile\Command]
    @="\"D:\\Programme\\AutoIt3\\Aut2Exe\\Aut2Exe.exe\" /in \"%l\""

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\CompileX64]
    @="Compile Script (x64)"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\CompileX64\Command]
    @="\"D:\\Programme\\AutoIt3\\Aut2Exe\\Aut2Exe_x64.exe\" /in \"%l\""

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\CompileX86]
    @="Compile Script (x86)"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\CompileX86\Command]
    @="\"D:\\Programme\\AutoIt3\\Aut2Exe\\Aut2Exe.exe\" /in \"%l\""

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Edit]
    @="Edit Script"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Edit\Command]
    @="\"D:\\Programme\\AutoIt3\\SciTE\\SciTE.exe\" \"%1\""

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Open]
    @="Open"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Open\Command]
    @="\"D:\\Programme\\AutoIt3\\SciTE\\SciTE.exe\" \"%1\""

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Run]
    @="Run Script"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\Run\Command]
    @="\"D:\\Programme\\AutoIt3\\AutoIt3.exe\" \"%1\" %*"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\RunX64]
    @="Run Script (x64)"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\RunX64\Command]
    @="\"D:\\Programme\\AutoIt3\\AutoIt3_x64.exe\" \"%1\" %*"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\RunX86]
    @="Run Script (x86)"

    [HKEY_CLASSES_ROOT\AutoIt3Script\Shell\RunX86\Command]
    @="\"D:\\Programme\\AutoIt3\\AutoIt3.exe\" \"%1\" %*"

    die pfade musst du natürlich anpassen!

    danach registry datei ausführen und entweder ist es sofort aktiv oder du musst den rechner eben neustarten..

    //EDIT: hab mal noch das für die "neue autoit" datei sache hinzugefügt.. hatte das erst vergessen..

    mfg
    sgtigram

  • Happy Burtstag Der_Doc und BugFix

    • SgtIgram
    • 28. November 2013 um 14:31

    howdy

    auch von mir alles gute!

    [Blockierte Grafik: http://3.bp.blogspot.com/_SwpI8JqkgcY/TDHyeZv6neI/AAAAAAAAAvc/MIdoH71aSdo/s1600/020610_geburtstag.jpg]

  • DLLCall etc.

    • SgtIgram
    • 27. November 2013 um 20:04

    howdy..

    ich leg dir bei der gelegenheit das DLL-Tut von BugFix ans herz mit dem ich mich auch grade befasse:
    http://bug-fix.info/dll/dll_tut.html

    mfg
    sgtigram

  • CSS Navigation

    • SgtIgram
    • 26. November 2013 um 00:30

    howdy..

    hab grad mal bissel rumgebastelt und dabei kam das raus..
    ohne javascript.. so wie du es wolltest^^ wobei ich nicht ganz verstehe wieso.. javascript is doch toll :D

    hier nochmal als code wobei der quelltext nicht so schwer aufzurufen sein sollte :D

    HTML
    <html>
    	<head>
    		<title>blubb</title>
    		<style>
    			#menu1:hover:before { content:"menu1"; }
    			#menu2:hover:before { content:"menu2"; }
    			#menu3:hover:before { content:"menu3"; }
    		</style>
    	</head>
    	<body>
    		<div id="menu1" style="position:absolute;top:5px;left:5px;z-index:3;"><br>button1</div>
    		<div id="menu2" style="position:absolute;top:5px;left:5px;z-index:2;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;button2</div>
    		<div id="menu3" style="position:absolute;top:5px;left:5px;z-index:1;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;button3</div>
    	</body>
    </html>
    Alles anzeigen

    //edit: code formatiert um keine schelle zu bekommen^^

    mfg
    sgtigram

  • Buchmanagment

    • SgtIgram
    • 25. November 2013 um 05:58

    howdy...

    also ich persönlich würde dir doch eher die SQL variante dafür empfehlen.. und sich in sql einzulesen ist nicht sonderlich schwer

    wenn du dann etwas in der materie bist könntest du dann auch leicht das ganze mit einer web-datenbank synchronisieren und dann auf einer webseite anzeigen lassen ob ein bestimmtes buch verfügbar ist oder wenn nicht, wann es frei wird

    hab ursprünglich mit php und mysql angefangen und finde das man es so ganz gut realisieren kann

    ich empfehle dir die SQLite UDF und dazugehörige dll

    mfg
    sgtigram

  • Farben in INI-Datei abspeichern

    • SgtIgram
    • 24. November 2013 um 16:43

    howdy

    muss es dauerhaft gespeichert werden oder nur temporär? wenn nur temporär und du die werte noch im selben programm verarbeiten willst eignen sich dafür auch arrays..

    bevor ich dir eine musterlösung gebe... ist das ganze für ein aimbot?

    mfg
    sgtigram

  • Mehrere Ereignisse überwachen

    • SgtIgram
    • 23. November 2013 um 01:02

    naja.. waren es nich einfach nur die fehlenden anführungszeichen bei der test.exe?

  • Webcam Bild Automatisch speichern

    • SgtIgram
    • 20. November 2013 um 18:06

    howdy

    ich hab mir da vor ner zeit mal was gezogen von Ludocus

    UDF:

    Spoiler anzeigen
    [autoit]

    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.2.11.7 (beta)
    Author: Ludocus

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

    Script Function:
    Webcam Udf

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

    #ce ----------------------------------------------------------------------------

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

    ; Script Start - Add your code below here
    #include <WindowsConstants.au3>
    #include-once
    $WM_CAP_START = 0x400
    $WM_CAP_UNICODE_START = $WM_CAP_START +100
    $WM_CAP_PAL_SAVEA = $WM_CAP_START + 81
    $WM_CAP_PAL_SAVEW = $WM_CAP_UNICODE_START + 81
    $WM_CAP_UNICODE_END = $WM_CAP_PAL_SAVEW
    $WM_CAP_ABORT = $WM_CAP_START + 69
    $WM_CAP_DLG_VIDEOCOMPRESSION = $WM_CAP_START + 46
    $WM_CAP_DLG_VIDEODISPLAY = $WM_CAP_START + 43
    $WM_CAP_DLG_VIDEOFORMAT = $WM_CAP_START + 41
    $WM_CAP_DLG_VIDEOSOURCE = $WM_CAP_START + 42
    $WM_CAP_DRIVER_CONNECT = $WM_CAP_START + 10
    $WM_CAP_DRIVER_DISCONNECT = $WM_CAP_START + 11
    $WM_CAP_DRIVER_GET_CAPS = $WM_CAP_START + 14
    $WM_CAP_DRIVER_GET_NAMEA = $WM_CAP_START + 12
    $WM_CAP_DRIVER_GET_NAMEW = $WM_CAP_UNICODE_START + 12
    $WM_CAP_DRIVER_GET_VERSIONA = $WM_CAP_START + 13
    $WM_CAP_DRIVER_GET_VERSIONW = $WM_CAP_UNICODE_START + 13
    $WM_CAP_EDIT_COPY = $WM_CAP_START + 30
    $WM_CAP_END = $WM_CAP_UNICODE_END
    $WM_CAP_FILE_ALLOCATE = $WM_CAP_START + 22
    $WM_CAP_FILE_GET_CAPTURE_FILEA = $WM_CAP_START + 21
    $WM_CAP_FILE_GET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 21
    $WM_CAP_FILE_SAVEASA = $WM_CAP_START + 23
    $WM_CAP_FILE_SAVEASW = $WM_CAP_UNICODE_START + 23
    $WM_CAP_FILE_SAVEDIBA = $WM_CAP_START + 25
    $WM_CAP_FILE_SAVEDIBW = $WM_CAP_UNICODE_START + 25
    $WM_CAP_FILE_SET_CAPTURE_FILEA = $WM_CAP_START + 20
    $WM_CAP_FILE_SET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 20
    $WM_CAP_FILE_SET_INFOCHUNK = $WM_CAP_START + 24
    $WM_CAP_GET_AUDIOFORMAT = $WM_CAP_START + 36
    $WM_CAP_GET_CAPSTREAMPTR = $WM_CAP_START + 1
    $WM_CAP_GET_MCI_DEVICEA = $WM_CAP_START + 67
    $WM_CAP_GET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 67
    $WM_CAP_GET_SEQUENCE_SETUP = $WM_CAP_START + 65
    $WM_CAP_GET_STATUS = $WM_CAP_START + 54
    $WM_CAP_GET_USER_DATA = $WM_CAP_START + 8
    $WM_CAP_GET_VIDEOFORMAT = $WM_CAP_START + 44
    $WM_CAP_GRAB_FRAME = $WM_CAP_START + 60
    $WM_CAP_GRAB_FRAME_NOSTOP = $WM_CAP_START + 61
    $WM_CAP_PAL_AUTOCREATE = $WM_CAP_START + 83
    $WM_CAP_PAL_MANUALCREATE = $WM_CAP_START + 84
    $WM_CAP_PAL_OPENA = $WM_CAP_START + 80
    $WM_CAP_PAL_OPENW = $WM_CAP_UNICODE_START + 80
    $WM_CAP_PAL_PASTE = $WM_CAP_START + 82
    $WM_CAP_SEQUENCE = $WM_CAP_START + 62
    $WM_CAP_SEQUENCE_NOFILE = $WM_CAP_START + 63
    $WM_CAP_SET_AUDIOFORMAT = $WM_CAP_START + 35
    $WM_CAP_SET_CALLBACK_CAPCONTROL = $WM_CAP_START + 85
    $WM_CAP_SET_CALLBACK_ERRORA = $WM_CAP_START + 2
    $WM_CAP_SET_CALLBACK_ERRORW = $WM_CAP_UNICODE_START + 2
    $WM_CAP_SET_CALLBACK_FRAME = $WM_CAP_START + 5
    $WM_CAP_SET_CALLBACK_STATUSA = $WM_CAP_START + 3
    $WM_CAP_SET_CALLBACK_STATUSW = $WM_CAP_UNICODE_START + 3
    $WM_CAP_SET_CALLBACK_VIDEOSTREAM = $WM_CAP_START + 6
    $WM_CAP_SET_CALLBACK_WAVESTREAM = $WM_CAP_START + 7
    $WM_CAP_SET_CALLBACK_YIELD = $WM_CAP_START + 4
    $WM_CAP_SET_MCI_DEVICEA = $WM_CAP_START + 66
    $WM_CAP_SET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 66
    $WM_CAP_SET_OVERLAY = $WM_CAP_START + 51
    $WM_CAP_SET_PREVIEW = $WM_CAP_START + 50
    $WM_CAP_SET_PREVIEWRATE = $WM_CAP_START + 52
    $WM_CAP_SET_SCALE = $WM_CAP_START + 53
    $WM_CAP_SET_SCROLL = $WM_CAP_START + 55
    $WM_CAP_SET_SEQUENCE_SETUP = $WM_CAP_START + 64
    $WM_CAP_SET_USER_DATA = $WM_CAP_START + 9
    $WM_CAP_SET_VIDEOFORMAT = $WM_CAP_START + 45
    $WM_CAP_SINGLE_FRAME = $WM_CAP_START + 72
    $WM_CAP_SINGLE_FRAME_CLOSE = $WM_CAP_START + 71
    $WM_CAP_SINGLE_FRAME_OPEN = $WM_CAP_START + 70
    $WM_CAP_STOP = $WM_CAP_START + 68
    #include <GUIConstants.au3>
    $avi = DllOpen("avicap32.dll")
    $user = DllOpen("user32.dll")

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

    ;===============================================================================
    ;
    ; Description: Open's a webcam preview screen in your gui
    ; Syntax: _WebcamOpen($sHwnd, $sLeft, $sTop, $sWidth, $sHeight)
    ; Parameter(s): $sHwnd - The handle of the gui
    ; $sLeft - Left coord. of the preview screen
    ; $sTop - Top coord. of the preview screen
    ; $sWidth - Width of the preview screen
    ; $sHeight - Height of the preview screen
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns id needed for other controls
    ; On Failure - Returns -1
    ; Author(s): Ludocus
    ; Note(s): None
    ;
    ;===============================================================================
    func _WebcamOpen($sHwnd, $sLeft, $sTop, $sWidth, $sHeight)
    $cap = DllCall($avi, "int", "capCreateCaptureWindow", "str", "cap", "int", BitOR($WS_CHILD,$WS_VISIBLE), "int", $sLeft, "int", $sTop, "int", $sWidth, "int", $sHeight, "hwnd", $sHwnd, "int", 1)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_DRIVER_CONNECT, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_SCALE, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_OVERLAY, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEW, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEWRATE, "int", 1, "int", 0)
    if @error then return -1
    return $cap[0]
    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Creates a Snapshot from a webcam
    ; Syntax: _WebcamSnap($sId, $sFile)
    ; Parameter(s): $sId - Id (returned from _WebcamOpen)
    ; $sFile - File to save the snapshot to (*.bmp)
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0
    ; Author(s): Ludocus
    ; Note(s): None
    ;
    ;===============================================================================
    Func _WebcamSnap($sId, $sFile)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_SET_CALLBACK_FRAME, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_GRAB_FRAME_NOSTOP, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_FILE_SAVEDIBA, "int", 0, "str", $sFile)
    if @error Then
    return 0
    Else
    return 1
    EndIf
    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Closes the preview screen created with _WebcamOpen
    ; Syntax: _WebcamClose($sId)
    ; Parameter(s): $sId - Id (returned from _WebcamOpen)
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0
    ; Author(s): Ludocus
    ; Note(s): None
    ;
    ;===============================================================================
    Func _WebcamClose($sId)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_END, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_DRIVER_DISCONNECT, "int", 0, "int", 0)
    DllClose($user)
    if @error Then
    return 0
    Else
    return 1
    EndIf
    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Starts recording the webcam to a file
    ; Syntax: _WebcamRecordStart($sFile, $sId)
    ; Parameter(s): $sId - Id (returned from _WebcamOpen)
    ; $sFile - File to save the movie to (*.avi)
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0
    ; Author(s): Ludocus
    ; Note(s): Stop recording by: _WebcamRecordStop($Id)
    ;
    ;===============================================================================
    Func _WebcamRecordStart($sFile, $sId)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_FILE_SET_CAPTURE_FILEA, "int", 0, "str", $sFile)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_SEQUENCE, "int", 0, "int", 0)
    if @error Then
    return 0
    Else
    return 1
    EndIf

    EndFunc

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

    ;===============================================================================
    ;
    ; Description: Stops recording.
    ; Syntax: _WebcamRecordStop($sId)
    ; Parameter(s): $sId - Id (returned from _WebcamOpen)
    ; Requirement(s): A webcam
    ; Return Value(s): On Success - Returns 1
    ; On Failure - Returns 0
    ; Author(s): Ludocus
    ; Note(s): None
    ;
    ;===============================================================================
    Func _WebcamRecordStop($sId)
    DllCall($user, "int", "SendMessage", "hWnd", $sId, "int", $WM_CAP_STOP, "int", 0, "int", 0)
    if @error Then
    return 0
    Else
    return 1
    EndIf
    EndFunc

    [/autoit]

    und hier das testscript:

    [autoit]

    #include <Webcam.au3>

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

    $GUI = GUICreate("webcamtest",800,600,-1,-1)
    _WebcamOpen($GUI, 5, 5, 790, 590)
    While 1
    sleep(10)
    WEnd

    [/autoit]

    habs grad nicht getestet weil keine cam angeschlossen ist, müsste aber funktionieren.. damit kannst du die übertragung live anzeigen lassen und schnappschüsse machen


    mfg
    sgtigram

  • Teile des Scripts auslagern auf Webserver

    • SgtIgram
    • 18. November 2013 um 19:48

    howdy...

    es geht.. nur wie meine vorredner schon erwähnten.. sicherheit wird ein contra sein

    du kannst theoretisch autoit code direkt mit

    [autoit]

    $webseitenInhalt = BinaryToString(InetRead("http://blablubb.com/bla.php?lizenzkey=blablablablubb"))

    [/autoit]


    holen und dann ausführen lassen.. ich gebe dir hier mal ein beispiel wie du es bewerkstelligen könntest:
    [Link entfernt]

    du musst allerdings bedenken das der code unverschlüsselt super einfach per z.b. wireshark abzufangen ist

    mfg
    sgtigram

    Edit Oscar: Keine Links zu Botseiten, bitte!

  • Button Farbe

    • SgtIgram
    • 13. November 2013 um 22:58

    also im notfall könntest du nen pic-control nehmen, es drüberlegen und es deaktivieren damit es den buttonclick nicht behindert..
    oder du arbeitest direkt mit nem pic-control und nem label und machst das ganze dann per guictrlsetonevent

  • Button Farbe

    • SgtIgram
    • 13. November 2013 um 22:35

    howdy

    also ich hab es in einem meiner programme so geregelt:

    [autoit]

    GUICtrlCreateButton("",300,155,30,30,$BS_ICON)
    GUICtrlSetImage(-1,@ScriptName, "207")

    [/autoit]

    wobei es sich dabei tatsächlich um icons handelt die ich der exe direkt mitgegeben hab, 207 ist in diesem fall die indexnummer des icons

    mfg
    sgtigram

  • _GetIP() überarbeitung

    • SgtIgram
    • 8. November 2013 um 09:22

    anflug von paranoia? auf wieistmeineip.de wird deine ip von etlichen server geloggt.. allein aus den grund werbung..
    das ist also nur haarspalterei.. und nein.. ich logge sie nicht..

  • _GetIP() überarbeitung

    • SgtIgram
    • 8. November 2013 um 09:16

    @xor: ne eben nicht .. erstens dauerts länger weils deutlich mehr daten gibt.. und du machst es nötig das string.au3 includet sein muss..

    also ist deine methode schlechter

    edit: mal ganz abgesehn davon das ein layout einer solchen website geändert werden kann.. und dann wär es sowieso hinfällig

    mfg
    sgtigram

  • _GetIP() überarbeitung

    • SgtIgram
    • 8. November 2013 um 08:54

    howdy

    vorweg: hoffe das es der richtige ort für den thread is^^

    da ich bemerken musste das der standard-server für die funktion _GetIP() an der ostküste der USA liegt eignet sich dieser natürlich nicht besonders für eine schnelle abfrage der IP(oftmals endet es sogar in nem timeout und man kam garnicht an die IP)..

    fazit: sehr unzuverlässig

    somit biete ich euch an folgendes in der Inet.au3 zu ändern

    macht aus dem hier:

    [autoit]

    Func _GetIP()
    Local $aReturn, $bRead, $sRead
    $bRead = InetRead("http://checkip.dyndns.org/")
    $sRead = BinaryToString($bRead)
    $aReturn = StringRegExp($sRead, '(?s)(?i)<body>Current IP Address: (.*?)</body>', 3)
    If @error = 0 Then
    Return $aReturn[0]
    EndIf

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

    $bRead = InetRead("http://automation.whatismyip.com/n09230945.asp") ; http://forum.whatismyip.com/f14/our-automation-rules-t241/
    $sRead = BinaryToString($bRead)
    If @error Then
    Return SetError(1, 0, -1)
    EndIf
    Return $sRead
    EndFunc ;==>_GetIP

    [/autoit]

    einfach das hier:

    [autoit]

    Func _GetIP()
    Local $aReturn = BinaryToString(InetRead("http://checkip.cookie-technology.net/"))
    If @error = 0 Then
    Return $aReturn
    Else
    Return -1
    EndIf

    EndFunc ;==>_GetIP

    [/autoit]

    dem einen oder anderen neugierigen wird aufgefallen sein das ich ein paar byte spare und das "your current ip" gedöhns einfach weggelassen hab und nur die ip anzeigen lasse

    wichtig: natürlich gilt für die benutzung meines servers das ich kein abusing tolleriere.. das bedeutet.. nur sinnvolle nutzungen..
    fakto: keine 30 abfragen in einer sekunde.. so oft ändert sich die ip nicht^^

    edit: P.S.: ihr könnt bei InetRead auch die option 1 setzen um sicherzustellen das definitiv die aktuelle ip gezogen wird

    mfg
    sgtigram

  • Nach dem compilen, Fehlermeldungen verallgemeinern oder entfernen?

    • SgtIgram
    • 8. November 2013 um 06:20

    howdy,

    klar errorhandling ist das A und O.. aber um seine eig. frage zu beantworten..

    ich gehe davon aus das er die crashmeldungen einer kompilierten exe meint..
    die kann man beispielsweise mit reshack editieren..

    ich verstehe den sinn daran jemanden nicht zwingend wissen zu lassen das es sich um ein autoit programm geht und an welcher stelle, was passiert...


    mfg
    sgtigram

  • Hilfe bei einem Messenger

    • SgtIgram
    • 7. November 2013 um 18:21

    howdy,

    bei der protex variante müsste noch der port freigegeben werden (in diesem fall 7500) damit überhaupt etwas funktioniert...
    zusätzlich wäre es von wichtigkeit die firewall entsprechend einzustellen...

    ich hab mir den chat jetzt nicht näher angeschaut aber ich denke als erstes muss die onlyserver datei ausgeführt werden was dann den server darstellt.. anschließend können beide auf diesen server verbinden.. wenn du den server startest müsstet ihr beide deine ip angeben bzw. könntest du (und nur du!) auch 127.0.0.1 eingeben.. wichtig sollte sein das auch wenn du drauf connecten kannst, es nicht heißen muss das der port wirklich offen ist da deine verbindung ja sozusagen bei dir bleibt und nicht am router vorbeimuss

    ich erwähne sicherheitshalber noch das nicht beide den server ausführen müssen^^.. sonst connectet ihr auf den server des jeweils anderen und wundert euch das niemand da is.. immer nur 1 server

    zu beachten ist natürlich das so wie der chat momentan ist, bietet er keinerlei sicherheit weil kein passwort verlangt wird

    falls ich was vergessen haben sollte, füge ich es an^^

    mfg
    sgtigram

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™