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

Beiträge von i2c

  • Happy B-Day

    • i2c
    • 25. April 2010 um 01:26

    Ich mach mal einen auf ...

    [Blockierte Grafik: http://www.abload.de/img/logotemplate-logo_48o109.png]

    Und Memorex nullt heute zum 30ten. Auch wenn er nach über 2 1/2 Jahren Inaktivität warscheinlich nicht ausgerechnet heute hier vorbeischaut - Alles Gute zum Runden!

    PS: @tince: 222 Beiträge - das nennt sich Schnapszahl. Ein weiterer Grund einen auszugeben :D

  • Möchte maus pos ablesen wie ?

    • i2c
    • 24. April 2010 um 22:23

    MouseGetPos()

  • Wie mach ich dass wenn ich retry drück das gleiche nochmal kommt?

    • i2c
    • 24. April 2010 um 20:17

    Warum so umständlich? Warum erstellst du nicht einfach ein Label in deiner GUI? Anstatt dann beim Button Event die MsgBox zu öffnen setzt du einfach mit GUICtrlSetData() den Inhalt des Labels neu.

    Das ewige neu aufpoppen der Boxen ist doch eher anwenderunfreundlich.

  • Wie mach ich dass wenn ich retry drück das gleiche nochmal kommt?

    • i2c
    • 24. April 2010 um 18:17
    [autoit]

    #include <ButtonConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Form1", 120, 86, 254, 124)
    $Label1 = GUICtrlCreateLabel("", 8, 8, 36, 17)
    $Button1 = GUICtrlCreateButton("Button1", 8, 40, 75, 25, $WS_GROUP)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Button1
    _generate()
    EndSwitch
    WEnd

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

    Func _generate()
    GUICtrlSetData($Label1, Random(1, 1000, 1))
    EndFunc

    [/autoit]
  • Direktes MenuItem ansprechen?

    • i2c
    • 24. April 2010 um 18:12

    Ich schreib dir eine.

    Hör auf deinen Beitrag alle paar Minuten zu pushen!

  • Bild Position eintragen und auslesen

    • i2c
    • 24. April 2010 um 15:05

    Simples Beispiel mit GUIGetCourorInfo(). Es werden die Koordinaten innerhalb der GUI ausgegeben, nicht die Koordinaten innerhalb des Bildes. Allerdings kennt man ja die Position des Bildes in der GUI, von daher sollte as kein Problem darstellen.

    [autoit]


    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Form1", 404, 393, 254, 124)
    $Pic1 = GUICtrlCreatePic(@ScriptDir & "\2.jpg", 8, 8, 388, 380, BitOR($SS_NOTIFY,$WS_GROUP,$WS_CLIPSIBLINGS))
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Pic1
    _getpos()
    EndSwitch
    WEnd

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

    Func _getpos()
    $pos = GUIGetCursorInfo()
    MsgBox(64, "", $pos[0] & " " & $pos[1])
    EndFunc

    [/autoit]
  • Bild Position eintragen und auslesen

    • i2c
    • 24. April 2010 um 14:37

    Ich würde das jetzt eher so verstehen, das er eine Aktion ausführen möchte wenn auf einen bestimmten Koordinatenbereich innerhalb des Bildes geklickt wird, z.B. die obere-linke Ecke.

    PS: pushen nach nichtmal einer Stunde muss nicht sein.

  • Mein Script funktioniert nicht.(Simpler 4 Ställiger Zahlen generator)

    • i2c
    • 24. April 2010 um 11:41

    Du hast #includes vergessen, keine GUICreate(), in den MsgBox'en fehlt ein & .....
    Ausserdem wird $Zahl bei dir immer gleich sein, egal welchen Button man drückt.

    [autoit]

    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    $gui = GUICreate("Form1", 330, 44, 254, 124)
    $1 = GUICtrlCreateButton("Button1", 8, 8, 75, 25, $WS_GROUP)
    $2 = GUICtrlCreateButton("Button2", 88, 8, 75, 25, $WS_GROUP)
    $3 = GUICtrlCreateButton("Button3", 168, 8, 75, 25, $WS_GROUP)
    $4 = GUICtrlCreateButton("Button4", 248, 8, 75, 25, $WS_GROUP)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    MsgBox(0,"Beendet!","Beendet!")
    Exit
    Case $1
    MsgBox(0,"Zahl","Deine Zahl ist:" & Random( 1, 9, 1))
    Case $2
    MsgBox(0,"Zahl","Deine Zahl ist:" & Random( 1, 9, 1))
    Case $3
    MsgBox(0,"Zahl","Deine Zahl ist:" & Random( 1, 9, 1))
    Case $4
    MsgBox(0,"Zahl","Deine Zahl ist:" & Random( 1, 9, 1))
    EndSwitch
    WEnd

    [/autoit][autoit][/autoit][autoit][/autoit]
  • Windows 7 installieren

    • i2c
    • 22. April 2010 um 12:10
    Zitat von chip

    peethebee Admins wie ich haben sogar Win 7 Enterprise :P

    Ist Enterprise nicht einfach nur ein Ultimate ohne MedaiCenter? ^^

  • Funktion stoppen?

    • i2c
    • 18. April 2010 um 22:49
    Zitat von Schnitzel

    genauer lesen:
    Function mit folgendem inhalt gestartet:

    ^^

    *virtuel niederknie* Verzeih mir, eine Woche Forenabstinenz zeigen ihre Wirkung. ;(

  • Funktion stoppen?

    • i2c
    • 18. April 2010 um 22:42

    Das isz keine Funktion sondern eine Schleife und die verlässt du mit ExitLoop.

  • Happy Birthday

    • i2c
    • 18. April 2010 um 22:11

    Ich schicke mal ein liebes Dankeschön in die Runde. :)

    28, so jung möcht ich gern nochmal werden ^^. Leider ist's schon der 29te. Jetzt geht's in zügigen Schritten auf die gefürchtete 30 zu. :rolleyes:

  • Captcha Competition Ostern bis Mitte April

    • i2c
    • 9. April 2010 um 13:39

    ich seh's noch

    [Blockierte Grafik: http://www15.picfront.org/picture/5QgrDA7OxRJ/thb/haha.jpg]

  • Win7 Logon-Bild Wechsler

    • i2c
    • 9. April 2010 um 08:23

    Er hat eigentlich "nur" eine allgemein bekannte Anleitung automatisiert. Von daher braucht er nicht zwingend ein Windows7. Denke auch das es so wie er es umgesetzt hat funktioniert. Testen werd ich später.

    Was mir beim überfliegen aufgefallen ist sind ein paar kleine syntaktische Fehler. Zum Beispiel in Zeile 59/60 und ab 78. In Zeile 67-71 scheinen die Messageboxen etwas durcheinander geraten zu sein.

    edit: Getestet. Wie erwartet funktioniert es nach ein paar kleinen Ausbesserungen wunderbar. Ich persönlich würde aus dem FileMove() ein FileCopy() machen. Find es nicht unbedingt anwenderfreundlich eine Datei zu verschieben ohne das der User den Vorgang abbrechen kann. Eine automatische Skalierung der Bilder wär vieleicht noch recht nützlich.

    Nettes, kleines Tool für alle die kein Bock auf LogonStudio oder TuneUp haben :thumbup:

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <GDIPlus.au3>
    #RequireAdmin
    #NoTrayIcon

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

    If @OSVersion <> "WIN_7" Then
    MsgBox(16, "Fehler", "Dein Betriebssystem ist nicht Windows 7.")
    Exit
    EndIf
    Opt('MustDeclareVars', 1)
    Opt("GUIOnEventMode", 1)

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

    Global $ExitID

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

    _Main()

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

    Func _Main()
    Local $createID, $DeleteID
    GUICreate("Custom Msgbox", 300, 80)
    GUICtrlCreateLabel("Bitte wählen sie eine Aktion aus. ", 10, 10)
    GUICtrlCreateLabel("Aktueller Status: ", 10, 30)
    If RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background", "OEMBackground") = 1 Then
    GUICtrlCreateLabel(">Benutzerdifiniert< ", 100, 30)
    Else
    GUICtrlCreateLabel(">Standart< ", 100, 30)
    EndIf
    $createID = GUICtrlCreateButton("Anmeldebildschirm verändern.", 10, 50)
    GUICtrlSetOnEvent($createID, "OnCreate")
    $DeleteID = GUICtrlCreateButton("Standart wiederherstellen.", 170, 50)
    GUICtrlSetOnEvent($DeleteID, "OnDelete")
    GUISetOnEvent($GUI_EVENT_CLOSE, "OnExit")
    GUISetState()

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

    While 1
    Sleep(1000)
    WEnd
    EndFunc ;==>_Main

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

    Func OnDelete()
    RegDelete("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background", "OEMBackground")
    If @error = 0 Then
    MsgBox(16, "Fehler", "Registry-Wert konnte nicht gelöscht werden. Bitte manuell löschen." & @CRLF & "" & @CRLF & "Registry-Wert:" & @CRLF & "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background\OEMBackground")
    Else
    MsgBox(0, "Info", "Registry-Wert erfolgreich gelöscht.")
    EndIf
    MsgBox(48, "ACHTUNG!", "Nun wird ein Befehl ausgeführt der den selben effekt wie ein Neustart hat.")
    EnvUpdate()
    EndFunc ;==>OnDelete

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

    Func OnExit()
    Exit
    EndFunc ;==>OnExit

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

    Func OnCreate()
    Local $Bild, $BildL, $hGraphicsImg, $hBitMap, $hImage, $X, $y

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

    If RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background", "OEMBackground") <> 1 Then
    RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background", "OEMBackground", "REG_DWORD", "1")
    MsgBox(0, "Info", "Registry-Wert wurde erstellt")
    If @error <> 0 Then
    MsgBox(16, "Fehler", "Registry-Wert konnte nicht erstellt werden!")
    EndIf
    Else
    MsgBox(0, "Info", "Registry-Wert exsistiert berits!")
    EndIf

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

    If FileExists(@HomeDrive & "\Windows\System32\oobe\info\backgrounds") Then
    MsgBox(4096, "Info", "Erforderliches Verzeichnis existiert bereits.")
    Else
    DirCreate(@HomeDrive & "\Windows\System32\oobe\info\backgrounds")
    MsgBox(4096, "Info", "Erforderliches Verzeichnis wurde erstellt.")
    EndIf
    $Bild = FileOpenDialog("Bitte Bild auswählen.", "@DesktopDir", "JPG-Bild (*.jpg)", 1)
    _GDIPlus_Startup()
    $BildL = _GDIPlus_ImageLoadFromFile($Bild)
    $X = _GDIPlus_ImageGetWidth($BildL)
    $y = _GDIPlus_ImageGetHeight($BildL)
    If $X <> @DesktopWidth Or $y <> @DesktopHeight Then
    MsgBox(16, "Fehler", "Die Bildgrösse entspricht nicht der Dektopauflösung")
    Exit
    EndIf
    If FileGetSize($Bild) > 262144 Then
    MsgBox(16, "Fehler", "Bild ist zu groß (über 256 KB).")
    Exit
    EndIf
    FileCopy($Bild, @HomeDrive & "\Windows\System32\oobe\info\backgrounds\backgroundDefault.jpg", 1)
    If @error <> 0 Then
    MsgBox(16, "Fehler", "Bild kann nicht kopiert werden.")
    EndIf
    MsgBox(48, "ACHTUNG!", "Nun wird ein Befehl ausgeführt der den selben Effekt wie ein Neustart hat.")
    EnvUpdate()
    EndFunc ;==>OnCreate

    [/autoit]
    Image skalieren
    [autoit]

    #include <GDIPlus.au3>
    #include <WinAPI.au3>

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

    _ImageResize(@DesktopDir & "\Chrysanthemum.jpg", @DesktopDir & "\Chrysanthemum_resized.jpg", @DesktopWidth, @DesktopHeight)

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

    ; #FUNCTION# =========================================================================================
    ; Name...........: _ImageResize
    ; Description....: Resize an image and optionally convert it to the format you want.
    ; Syntax.........: _ImageResize($sInImage, $sOutImage, $iW, $iH)
    ; Parameters ....: $sInImage - Full path to the image to resize / convert.
    ; In types: *.bmp, *.gif, *.ico, *.jpg, *.jpeg, *.png, *.tif, *.tiff
    ; $sOutImage - Full path where to save the resized / converted image.
    ; Out types: *.bmp, *.gif, *.jpg, *.jpeg, *.png, *.tif, *.tiff
    ; $iW - Width to resize image to.
    ; $iH - Height to resize image to.
    ; Return values .: Success - Return 1 and @error 0
    ; Failure - Return 0 and @error 1~5
    ; @error 1 = In File does not exist
    ; @error 2 = In File format not supported
    ; @error 3 = Out File path does not exist
    ; @error 4 = Out file format not supported
    ; @error 5 = Resize Width or Height not an integer
    ; Author ........: smashly
    ; ====================================================================================================
    Func _ImageResize($sInImage, $sOutImage, $iW, $iH)
    Local $sOP, $sOF, $sInExt, $Ext, $hBitmap, $hImage1, $hImage2, $hGraphic, $CLSID, $i = 0
    Local $sType = "BMP|GIF|ICO|JPG|JPEG|PNG|TIF|TIFF"

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

    If Not FileExists($sInImage) Then Return SetError(1, 0, 0)
    $sInExt = StringUpper(StringTrimLeft($sInImage, StringInStr($sInImage, ".", 0, -1)))
    If Not StringRegExp($sInExt, "\A(" & $sType & ")\z", 0) Then Return SetError(2, 0, 0)

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

    ;OutFile path, to use later on.
    $sOP = StringLeft($sOutImage, StringInStr($sOutImage, "\", 0, -1))
    If Not FileExists($sOP) Then Return SetError(3, 0, 0)

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

    ;OutFile name, to use later on.
    $sOF = StringTrimLeft($sOutImage, StringInStr($sOutImage, "\", 0, -1))

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

    ;OutFile extension , to use for the encoder later on.
    $Ext = StringUpper(StringTrimLeft($sOutImage, StringInStr($sOutImage, ".", 0, -1)))
    If Not StringRegExp($Ext, "\A(" & $sType & ")\z", 0) Or $Ext = "ICO" Then Return SetError(4, 0, 0)

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

    If Not IsInt($iW) And Not IsInt($iH) Then Return SetError(5, 0, 0)

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

    ; WinAPI to create blank bitmap at the width and height to put your resized image on.
    $hBitmap = _WinAPI_CreateBitmap($iW, $iH, 1, 32)

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

    ;Start GDIPlus
    _GDIPlus_Startup()

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

    ;Get the handle of blank bitmap you created above as an image
    $hImage1 = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap)

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

    ;Load the image you want to resize.
    $hImage2 = _GDIPlus_ImageLoadFromFile($sInImage)

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

    ;Get the graphic context of the blank bitmap
    $hGraphic = _GDIPlus_ImageGetGraphicsContext($hImage1)

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

    ;Draw the loaded image onto the blank bitmap at the size you want
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hImage2, 0, 0, $iW, $iH)

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

    ;Get the encoder of to save the resized image in the format you want.
    $CLSID = _GDIPlus_EncodersGetCLSID($Ext)

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

    ;Generate a number for out file that doesn't already exist, so you don't overwrite an existing image.
    Do
    $i += 1
    Until (Not FileExists($sOP & $i & "_" & $sOF))

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

    ;Prefix the number to the begining of the output filename
    $sOutImage = $sOP & $i & "_" & $sOF

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

    ;Save the new resized image.
    _GDIPlus_ImageSaveToFileEx($hImage1, $sOutImage, $CLSID)

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

    ;Clean up and shutdown GDIPlus.
    _GDIPlus_ImageDispose($hImage1)
    _GDIPlus_ImageDispose($hImage2)
    _GDIPlus_GraphicsDispose($hGraphic)
    _WinAPI_DeleteObject($hBitmap)
    _GDIPlus_Shutdown()
    Return SetError(0, 0, 1)
    EndFunc ;==>_ImageResize

    [/autoit]
  • Captcha Competition Ostern bis Mitte April

    • i2c
    • 8. April 2010 um 19:14

    Ist der Sinn eines Captchas das unkenntlich machen einer Zeichenkette oder soll es für den User noch lesbar sein?

  • Label as Link

    • i2c
    • 8. April 2010 um 17:40
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Form1", 117, 36, 254, 124)
    $Label1 = GUICtrlCreateLabel("klick mich", 16, 8, 51, 17)
    GUICtrlSetFont(-1, 8, 400, 4, "MS Sans Serif")
    GUICtrlSetCursor (-1, 0)

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

    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $Label1
    ShellExecute("http://autoit.de")
    EndSwitch
    WEnd

    [/autoit]
  • No matching Next statement

    • i2c
    • 8. April 2010 um 12:54

    Bei der ersten FOR (Zeile 5) fehlt das NEXT:

  • Windows 7 probleme mit chronischen Sicherheitsnachfrage

    • i2c
    • 7. April 2010 um 20:31

    Ich schreib jetzt auch mal gross damit man es auf Anhieb versteht ...

    NEIN, es liegt nicht am unbekannten Herausgeber.

    #RequireAdmin verlangt diese Berechtigung bei jedem Skriptstart. Wenn dein Programm Systemnahe Veränderungen vornehmen soll w.z.B. Registry Einträge erstellen, dann muss das nunmal sein. Umgehen kannst du es nur durch abschalten der Benutzerkontensteuerung oder indem du die Anweisung aus deinem Skript entfernst. (jedenfalls offiziell).

    edith sagt: Wenn's dich so sehr stört könntest du das Fenster ja beim Programmstart abfangen und bestätigen lassen.

  • GUI-COMBO

    • i2c
    • 7. April 2010 um 18:43
    Zitat von Schnitzel

    auf jeden fall :D

    hab die schon 700 mal durchgezockt :D
    (gibts sowas überhaupt? xD )

    Jetzt tu doch nicht so, steh zu deiner Leidenschaft :D. http://www.amazon.de/Teletubbies-Spiel-mit-den/dp/3896271873

  • GUI input bei klick text löschen

    • i2c
    • 7. April 2010 um 15:12
    [autoit]

    #include <EditConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    $Form1 = GUICreate("Form1", 154, 74, 254, 124)
    $Input1 = GUICtrlCreateInput("Input1", 8, 8, 121, 21)
    $Input2 = GUICtrlCreateInput("Input2", 8, 40, 121, 21)
    GUISetState(@SW_SHOW)

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

    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case $GUI_EVENT_CLOSE
    Exit
    Case $GUI_EVENT_PRIMARYDOWN
    $cInfo = GUIGetCursorInfo()
    If IsArray($cInfo) Then
    If $cInfo[4] = $Input1 Then
    GUICtrlSetData($Input1, "")
    ElseIf $cInfo[4] = $Input2 Then
    GUICtrlSetData($Input2, "")
    EndIf
    EndIf
    EndSwitch
    WEnd

    [/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™