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

Beiträge von name22

  • Script von 06:30 Uhr bis 17 Uhr täglich laufen lassen und evtl. am Wochenende nicht

    • name22
    • 4. September 2013 um 12:27

    Ich würde das an deiner Stelle aus dem Programm nehmen und per Task-Scheduler erledigen lassen..
    Starte mal die Windows Aufgabenplanung und schau dir an ob das für dich ausreicht. Man kann das auch in AutoIt umsetzen, aber es wäre sinnvoller und einfacher den Task-Scheduler zu nutzen, der ja eh schon im Hintergrund mitläuft.

  • Brauche Ideen für Einladung [bis morgen Mittag]

    • name22
    • 2. September 2013 um 22:01

    Ich würde vermutlich mit Wachsmalstiften und absichtlich gebrochener Grammatik eine Vorlage zusammenkritzeln und diese dann in S/W mit 300x300 dpi 150 mal kopieren. Einfach nur aus Prinzip.:whistling:
    Das einzige, was mir einfallen würde, wäre mit LaTeX rumzuprobieren. Falls du Windows nutzt empfehle ich MiKTeX. Aber das fällt wohl aus Zeitmangel weg (trotzdem ein cooles System für Dokumente aller Art).
    Ich würde das ganze vermutlich als Webpage (HTML Dokument + CSS) umsetzen und per Browser ausdrucken.
    Das Einfachste wäre wahrscheinlich immer noch die Suche nach einer OpenOffice/Word Vorlage für Einladungskarten ^^...

  • Maus Doppelklick-Taste Hooken und alternative Maustaste ausgeben

    • name22
    • 2. September 2013 um 20:19

    Die Umsetzung mit AutoIt ist definitiv möglich. Ich habe gerade ein Programm gebastelt, dass genau das macht was du verlangst.
    Es gibt jedoch einige Einschränkungen (die aber nichts mit AutoIt zu tun haben):

    • Jeder einzelne, normale Mausclick wird um mindestens 20 ms verzögert.
    • Wenn du es schaffen solltest, aufgrund übernatürlicher menschliche Fähigkeiten, innterhalb von 20 ms 2 einzelne Mausclicks auf die konventionelle Weise zu tätigen, wird das als Hotkey interpretiert.
    • Wenn dein Programm sich aufhängen sollte oder die Aktion, die du im Falle eines 20 ms Doppelclicks ausführen willst, zu viel Zeit in Anspruch nehmen sollte ist dein Mauszeiger in dieser Zeit funktionsunfähig. Nach einigen Sekunden löscht Windows jedoch den Hook und geht davon aus, dass dein Programm ein Problem hat.


    Das einzige Problem, dass ich speziell in AutoIt habe ist die unschöne Lösung die ich verwenden musste um die Mausclicks zu verzögern.
    Diese Probleme wirst du in ähnlicher Form immer haben, egal wie du das ganze anpackst. Aber es sollte wirklich schwer sein innerhalb von 20 ms zwei mal auf die linke Maustaste zu hauen...

    Dieses Programm verstößt in keinster Weise gegen die Forenregeln, deswegen möchte ich einen guten Willen zeigen und das ganze hier zur Verfügung stellen. Ich bin ja weiß Gott nicht der erste der hier mit Hooks arbeitet.

    Spoiler anzeigen
    [autoit]

    #include <WindowsConstants.au3>
    #include <WinAPI.au3>

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

    ; -Author: name22 (http://www.autoit.de)

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

    Global Const $iDoubleclickTime = 25
    Global $hCallback, $hMod, $hHook, $iClickState = 0

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

    OnAutoItExitRegister("_Shutdown")
    HotKeySet("{ESC}", "_Exit")

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

    $hCallback = DllCallbackRegister("_LL_MouseProc", "long", "int;wparam;lparam")

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

    $hMod = _WinAPI_GetModuleHandle(0)
    $hHook = _WinAPI_SetWindowsHookEx($WH_MOUSE_LL, DllCallbackGetPtr($hCallback), $hMod)

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

    While Sleep(1000)
    WEnd

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

    Func _LL_MouseProc($nCode, $wParam, $lParam)
    If $nCode < 0 Then Return _WinAPI_CallNextHookEx($hHook, $nCode, $wParam, $lParam)

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

    Switch $wParam
    Case $WM_LBUTTONDOWN
    Switch $iClickState
    Case 0
    AdlibRegister("_DelayMouseClick", $iDoubleclickTime)
    $iClickState = 1
    Return 1
    Case 1
    AdlibUnRegister("_DelayMouseClick")
    $iClickState = 0
    ConsoleWrite("Doubleclick!" & @CRLF)
    Return 1
    Case 2
    $iClickState = 0
    EndSwitch
    EndSwitch
    Return _WinAPI_CallNextHookEx($hHook, $nCode, $wParam, $lParam)
    EndFunc

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

    Func _DelayMouseClick()
    $iClickState = 2
    MouseClick("left")
    AdlibUnRegister("_DelayMouseClick")
    EndFunc

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

    Func _Exit()
    Exit
    EndFunc

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

    Func _Shutdown()
    Do
    Sleep(20)
    Until $iClickState = 0

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

    _WinAPI_UnhookWindowsHookEx($hHook)
    DllCallbackFree($hCallback)
    EndFunc

    [/autoit]
  • Maus Doppelklick-Taste Hooken und alternative Maustaste ausgeben

    • name22
    • 1. September 2013 um 22:53

    Das soll jetzt in keinster Weise eine Anschuldigung sein, aber die Kombination von globalen Input Hooks und MMOs klingt bedenklich in Anbetracht unserer Forenregeln. ^^

  • Passwörter

    • name22
    • 28. August 2013 um 17:45

    @commander Aber was hindert mich daran, das Archiv einmal zu entpacken und die Datei dann nach belieben ohne Passwortschutz weiter zu verteilen?

  • AutoIt.de Logo Wettbewerb

    • name22
    • 27. August 2013 um 23:30

    Mars Auch wenn es technisch leicht umsetzbar wäre, finde ich persönlich ein animiertes Logo im Header etwas zu aufgebläht, für unser eher schlicht gehaltenes Forum.. ^^
    Außerdem würdest du den Usern mit Kartoffelcomputer und Holzinternet nicht gerade einen Gefallen tun, was Dateigröße betrifft.

  • Umlaute Problem mit Sybase über ODBC

    • name22
    • 27. August 2013 um 19:38

    Hier mal ein Workaround, bis ich herausgefunden habe welche Funktion eigentlich dafür zuständig ist.

    [autoit]

    MsgBox(0,"", BinaryToString("Hängeschrank", 4))

    [/autoit]


    Der String ist ANSI, und muss nach UTF-8 konvertiert werden, damit der Umlaut korrekt dargestellt wird.

  • Alles Gute blubbstar

    • name22
    • 17. August 2013 um 22:12

    Herzlichen Glückwunsch und bestes Glück im neuen Lebensjahr ;).

  • Fehler in GDIPlus.au3

    • name22
    • 16. August 2013 um 22:44

    BugFix Das ist ein Fehler innerhalb der Funktion _GDIPlus_GraphicsDrawString. Die ruft intern einfach nur _GDIPlus_GraphicsDrawStringEx auf und generiert dazu noch eine RECTF Struktur mit _GDIPlus_GraphicsMeasureString. Die Funktion gibt kein Array zurück, wenn sie fehlschlägt (er hat vergessen die Dll per _Startup Funktion zu öffnen und in eine globale Variable schreiben zu lassen -> Funktion schlägt fehl).
    Da wohl niemand daran gedacht hat für diesen Fall Errorhandling einzubauen, um das ganze wirklich idiotensicher zu machen, beschwert sich AutoIt halt über das Array das keins ist. ^^

  • Fehler in GDIPlus.au3

    • name22
    • 16. August 2013 um 21:21

    Bitte erzähl mir nicht, dass du darauf nicht selbst mit ein wenig mehr Aufmerksamkeit gekommen wärst :rolleyes: .

    Spoiler anzeigen
    [autoit]

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

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

    $sTime = _NowTime(4)

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

    While Sleep(20)
    If $sTime <> _NowTime(4) Then
    $sTime = _NowTime(4)
    _New_Background($sTime)
    ;MsgBox(0, "", "Change")
    EndIf
    WEnd

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

    Func _New_Background($Time)

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

    _GDIPLUS_STARTUP() ; <------ !!!

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

    Local $hGUI = GUICreate("BG-Dummy",@DesktopWidth,@DesktopHeight)
    Local $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    Local $hBitmap = _GDIPlus_BitmapCreateFromGraphics(@DesktopWidth,@DesktopHeight,$hGraphic)
    Local $hBuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    Local $hRed = _GDIPlus_BrushCreateSolid(0x99FF0000)

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

    _GDIPlus_GraphicsFillEllipse($hBuffer,(@DesktopWidth / 2) - 200, (@DesktopHeight / 2) - 100,200,100,$hRed)
    Local $iTextWidth = _GetTextLabelWidth($Time,"Arial",10)
    ConsoleWrite($iTextWidth & @CRLF)
    _GDIPlus_GraphicsDrawString($hBuffer,$Time,(@DesktopWidth / 2) - ($iTextWidth / 2),(@DesktopHeight / 2) - 5,"Arial",10,0x0001)
    _GDIPlus_GraphicsDrawImage($hGraphic,$hBitmap,0,0)
    ;_GDIPlus_ImageSaveToFile($hBitmap,@TempDir & "\Image_" & StringReplace($Time,":","_") & ".jpg")
    RegWrite("HKEY_CURRENT_USER\Control Panel\Desktop", "WallpaperStyle", "REG_SZ", "0")
    RegWrite("HKEY_CURRENT_USER\Control Panel\Desktop", "TileWallpaper", "REG_SZ", "0")
    DllCall("user32.dll", "int", "SystemParametersInfo","uint",20,"uint",0,"str",$hBitmap,"uint",3)

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

    _GDIPLUS_SHUTDOWN() ; <------ !!!

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

    EndFunc ;==>_New_Background

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

    Func _GetTextLabelWidth($s_WinText, $s_TextFont, $i_FontSize, $i_FontWeight = -1)
    Local Const $DEFAULT_CHARSET = 0 ; ANSI character set
    Local Const $OUT_CHARACTER_PRECIS = 2
    Local Const $CLIP_DEFAULT_PRECIS = 0
    Local Const $PROOF_QUALITY = 2
    Local Const $FIXED_PITCH = 1
    Local Const $RGN_XOR = 3
    Local Const $LOGPIXELSY = 90
    Local Const $dUser32 = DllOpen("user32.dll"), $dGDI32 = DllOpen("gdi32.dll"), $dKERN32 = DllOpen("kernel32.dll")
    $h_WinTitle = "Get Label Width"
    If $i_FontWeight = "" Or $i_FontWeight = -1 Then $i_FontWeight = 600 ; default Font weight
    Local $h_GUI = GUICreate($h_WinTitle, 10, 10, -100, -100, $WS_POPUPWINDOW, $WS_EX_TOOLWINDOW)
    Local $hDC = DllCall($dUser32, "int", "GetDC", "hwnd", $h_GUI)
    Local $intDeviceCap = DllCall($dGDI32, "long", "GetDeviceCaps", "int", $hDC[0], "long", $LOGPIXELSY)
    $intDeviceCap = $intDeviceCap[0]
    Local $intFontHeight = DllCall($dKERN32, "long", "MulDiv", "long", $i_FontSize, "long", $intDeviceCap, "long", 72)
    $intFontHeight = -$intFontHeight[0]
    Local $hMyFont = DllCall($dGDI32, "hwnd", "CreateFont", "int", $intFontHeight, "int", 0, "int", 0, "int", 0, "int", $i_FontWeight, "int", 0, "int", 0, "int", 0, "int", $DEFAULT_CHARSET, "int", $OUT_CHARACTER_PRECIS, "int", $CLIP_DEFAULT_PRECIS, "int", $PROOF_QUALITY, "int", $FIXED_PITCH, "str", $s_TextFont)
    DllCall($dGDI32, "hwnd", "SelectObject", "int", $hDC[0], "hwnd", $hMyFont[0])
    Local $res = DllStructCreate("int;int")
    Local $ret = DllCall($dGDI32, "int", "GetTextExtentPoint32", "int", $hDC[0], "str", $s_WinText, "long", StringLen($s_WinText), "ptr", DllStructGetPtr($res))
    Local $intLabelWidth = DllStructGetData($res, 1)
    GUIDelete($h_GUI)
    Return $intLabelWidth
    EndFunc ;==>_GetTextLabelWidth

    [/autoit]
  • Ca. 500 € Laptop Kaufberatung

    • name22
    • 14. August 2013 um 16:40

    Ach so. Also eher so etwas: http://www.cyberport.de/?DEEP=1C26-8TJ&APID=14
    (Kleines 15,6" Laptop mit Full HD Display und gutem Prozessor. Das einzige 1080p Laptop was ich für <500€ finden konnte.)

    Etwas größer geht natürlich auch: http://www.urano-shop.de/Shop/DE/Produc…/1276278/false/

    Die hier wären vermutlich etwas übertrieben was die Grafikkarte betrifft:
    http://www.cyberport.de/?DEEP=1C28-1MJ&APID=14
    http://www.amazon.de/dp/B00BBVY8SM/ref=asc_df_B00BBVY8SM14418163?smid=A3JWKAKR8XB7XF&tag=geizhalspre03-21&linkCode=asn&creative=22494&creativeASIN=B00BBVY8SM

    Ich bin leider kein Experte in Sachen Laptop, aber vielleicht sind ja passende Vorschläge dabei ^^.

  • Ca. 500 € Laptop Kaufberatung

    • name22
    • 14. August 2013 um 16:06

    Wenn das wirklich nur ein Office Laptop sein soll, glaube ich nicht, dass er 500€ dafür ausgeben muss.
    Müssen es 15" sein? Hat er noch spezielle Wünsche (USB 3.0, viel Arbeitsspeicher, hohe Auflösung etc.)?

    Ich habe leider in der Richtung noch nichts getestet, aber wäre eventuell das hier etwas? http://www.amazon.de/gp/product/B00CHM7DOA/ref=noref?ie=UTF8&psc=1&s=computers
    Abgesehen von dem seltsamen Touchpad und der geringen Anzahl an USB Anschlüssen macht das ganze einen recht soliden Eindruck für ein Office Laptop. Betriebssystem ist nicht dabei (nur FreeDOS vorinstalliert).

  • Hallo

    • name22
    • 14. August 2013 um 15:22

    Willkommen im Forum Larsen ;).

    Zitat

    ... habe mich gerde registriert und bin schwer gespannt was mich noch alles zum Them AutoIt erwartet.

    Dann hoffe ich, dass du bei uns fündig wirst. :thumbup:

  • Fragen wegen ASCII

    • name22
    • 9. August 2013 um 16:31

    BiNu Bitte behaupte nicht, das "0x" gehört da nicht dazu, wenn du weder weißt wofür die Funktion Hex normalerweise gedacht ist, noch was ein ASCII Code ist.
    Abgesehen davon ist das kein ASCII sondern die Hexadezimalzahl eines Strings im ISO 8859 Format, aber es kommt für ihn auf das gleiche raus :whistling: ... Chesstigers Funktion kodiert tatsächlich ASCII. ;)

  • FireFox-Cookies auslesen/übergeben

    • name22
    • 8. August 2013 um 15:12

    Du hättest vielleicht von Anfang an erwähnen sollen, welches Programm du nutzt um die Datei zu lesen ^^.
    Ich glaube du hast die selben Startschwierigkeiten mit der SQLite UDF wie ich. Bei mir ist nämlich die Startup Funktion fehlgeschlagen, weil die Dll nicht gefunden wurde und die SQLite.dll.au3 nicht in der Lage war sie zu erzeugen.
    Besorge dir mal die sqlite3.dll von der offiziellen Homepage: http://sqlite.org/2013/sqlite-dll-win32-x86-3071700.zip
    Dann entpackst du die Dll in das Scriptverzeichnis und probierst folgenden Code:

    Spoiler anzeigen
    [autoit]

    #AutoIt3Wrapper_UseX64=0

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

    #include <SQLite.au3>
    #include <Array.au3>

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

    Global $sPath_DefaultProfile, $hCookieDB, $hQuery, $aRow, $sCookieDomain
    Global $sPath_Profiles = @AppDataDir & "\Mozilla\Firefox"
    Global $sPath_ProfileIni = $sPath_Profiles & "\profiles.ini"

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

    For $i = 0 To 9
    If IniRead($sPath_ProfileIni, "Profile" & $i, "Default", -1) <> -1 Then
    $sPath_DefaultProfile = IniRead($sPath_ProfileIni, "Profile" & $i, "Path", -1)
    If $sPath_DefaultProfile = -1 Then Exit 1
    EndIf
    Next

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

    $sPath_DefaultProfile = $sPath_Profiles & "\" & StringReplace($sPath_DefaultProfile, "/", "\")

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

    _SQLite_Startup(@ScriptDir & "\sqlite3.dll")
    $hCookieDB = _SQLite_Open($sPath_DefaultProfile & "\cookies.sqlite")

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

    _SQLite_Query($hCookieDB, "SELECT * FROM moz_cookies;", $hQuery)
    While _SQLite_FetchData($hQuery, $aRow) = $SQLITE_OK
    $sCookieDomain = $aRow[1]
    ConsoleWrite($sCookieDomain & @CRLF)
    WEnd

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

    _SQLite_Close($hCookieDB)
    _SQLite_Shutdown()

    [/autoit]

    Edit: Ich sollte nicht zwischendurch essen gehen wenn ich dabei bin einen Beitrag zu verfassen :rolleyes: .

  • Bash Zitate

    • name22
    • 8. August 2013 um 14:09

    Soweit ich sehen kann, hat das nichts mit AutoIt zu tun. Eigentlich gehört es dann auch nicht ins Forum für Programmieranfragen für AutoIt 3... Wir haben ein Forum für andere Programmiersprachen, bitte merk dir das für die Zukunft.
    Allerdings glaube ich, dass du hier ein wenig fehl am Platze bist. Immerhin ist das hier dein erstes Thema und es hat absolut nichts mit AutoIt - dem Hauptthema dieses Forums - zu tun. Andere Foren sind wesentlich besser geeignet um deine Frage zu stellen, wie Homelike Jester bereits bemerkt hat. ;)

  • FireFox-Cookies auslesen/übergeben

    • name22
    • 8. August 2013 um 13:54

    Schaue mal unter C:\Users\Nutzername\Appdata\Roaming\Mozilla\Firefox\Profiles nach deinem Profilordner. Darin befindet sich die cookies.sqlite Datei. Da du sowieso Firefox verwendest, besorgst du dir am besten das Addon "SQLite Manager" und öffnest damit diese Datei. Wenn du das gemacht hast, klickst du in der linken Spalte unter "Tables" auf "moz_cookies". Jetzt sollte dir das Programm deine Cookie-Einträge auflisten.
    Bei mir funktioniert das problemlos. Wenn es bei dir nicht klappt, dann kann ich dir leider nicht sagen wo der Fehler liegt. Dann müsstest du uns mehr Informationen geben, oder die cookies.sqlite zur Verfügung stellen, was du aber nicht tun solltest, wenn du die Datei nicht ausreichend zensiert hast ;).

  • Fragen wegen ASCII

    • name22
    • 8. August 2013 um 01:40

    BiNu Die Ausgabe ist bereits hexadezimal... Mal im Vergleich:

    Ausgabe meines Scripts:

    Code
    0x676F6F676C652E636F6D


    Ausgabe deines Scripts:

    Code
    676F6F676C652E636F6D


    :huh:
    Im Grunde hast du nur den Binärstring im Hexformat zu einem String umgewandel. Was den gleichen Effekt hat wie das 0x von meinem zu entfernen :wacko: .

  • frage zu ping- shutdown

    • name22
    • 7. August 2013 um 19:38

    Markiere in Scite mal eine Zeile und drücke Alt+D.

  • Fragen wegen ASCII

    • name22
    • 7. August 2013 um 18:51

    Beispiel:

    [autoit]

    ConsoleWrite(StringToBinary("google.com") & @CRLF)

    [/autoit]

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™