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

Beiträge von Tweaky

  • Update der Übersetzseite für die Hilfe auf 3.3.8.1

    • Tweaky
    • 25. Februar 2012 um 20:30

    Die Seite hat noch einige Sicherheitslücken, die Chip versucht zu beheben.
    Druch das beheben funktionieren jedoch manche Sachen nicht mehr.

    Chip hat leider wenig Zeit (Beruf und privates gehen natürlich vor ;) )

  • AUTOINSTALL NetFrame Work 4

    • Tweaky
    • 21. Februar 2012 um 17:55

    würde es silent mit den Parametern "/q /norestart" installieren ;)

  • Klammerproblem...

    • Tweaky
    • 9. Februar 2012 um 17:39

    du mußt bei Zahlen . statt , verwenden

    [autoit]

    MsgBox(0, " ", "Breite: " & (195 / 1360 * @DesktopWidth) & " Test Breite " & @DesktopWidth * (0.147916667 - ((@DesktopWidth - 1920) / (-640) * 0.001760566)))

    [/autoit]
  • Input1 text der geschrieben wird durch "*" zeichen ersetzen

    • Tweaky
    • 1. Februar 2012 um 21:34

    $Input2 = GUICtrlCreateInput("", 64, 72, 273, 21, $ES_PASSWORD)
    Das hat Greenhorn gemeint ;)

  • Input1 text der geschrieben wird durch "*" zeichen ersetzen

    • Tweaky
    • 1. Februar 2012 um 21:29

    bei Inputbox beim 4. Parameter (password char) "*" angeben

  • Fehler in der deutschen Hilfe bitte hier melden (Hilfedatei 3.3.6.1 2011.05.27)

    • Tweaky
    • 3. Januar 2012 um 19:32

    erledigt ;)

  • GUI ruckelt

    • Tweaky
    • 2. Januar 2012 um 19:25

    Danke UEZ,
    nun hab ich keine Fragen mehr :thumbup:

  • GUI ruckelt

    • Tweaky
    • 1. Januar 2012 um 20:45

    Wow, sieht sehr gut aus.

    Nochmals eine allerletzte Frahe an dich UEZ.

    Wie siehst du meine Frage in Post 11

  • GUI ruckelt

    • Tweaky
    • 31. Dezember 2011 um 17:09

    Nun will ich das Bild noch um 90° drehen.
    Ich hab zwar das Bsp aus der Hilfe gefunden, jedoch will ich das Bild nicht speichern, sondern nur anzeigen

    Spoiler anzeigen
    [autoit]

    #include <GDIPlus.au3>
    #include <ScreenCapture.au3>

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

    Opt('MustDeclareVars', 1)

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

    _Main()

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

    Func _Main()
    Local $hBitmap, $hImage, $sCLSID, $tData, $tParams

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

    ; Erstellt vom kompletten Bildschirm einen Screenshot
    _ScreenCapture_Capture(@MyDocumentsDir & "\GDIPlus_Image.jpg")

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

    ; Initialisiert (startet) Microsoft Windows GDI+
    _GDIPlus_Startup()

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

    ; Lädt ein Bild
    $hImage = _GDIPlus_ImageLoadFromFile(@MyDocumentsDir & "\GDIPlus_Image.jpg")

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

    ; Gibt die Encoder CLSID für einen festgelegten Bild-Dateityp zurück
    $sCLSID = _GDIPlus_EncodersGetCLSID("JPG")

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

    ; Setzt die Parameter für eine 90 Grad Rotation
    $tData = DllStructCreate("int Data")
    DllStructSetData($tData, "Data", $GDIP_EVTTRANSFORMROTATE90)
    $tParams = _GDIPlus_ParamInit(1)
    _GDIPlus_ParamAdd($tParams, $GDIP_EPGTRANSFORMATION, 1, $GDIP_EPTLONG, DllStructGetPtr($tData, "Data"))

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

    ; Speichert das gedrehte Bild
    _GDIPlus_ImageSaveToFileEx($hImage, @MyDocumentsDir & "\GDIPlus_Image2.jpg", $sCLSID, DllStructGetPtr($tParams))

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

    ; Gibt die durch Microsoft Windows GDI+ verwendeten Ressourcen wieder frei
    _GDIPlus_Shutdown()

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

    EndFunc ;==>_Main

    [/autoit]
  • GUI ruckelt

    • Tweaky
    • 31. Dezember 2011 um 15:13

    Noch ne eher allgemeine Frage zu GDIplus.

    Gibt es eigentliche Nachteile wenn _GDIPlus_Startup() mehrmals aufgerufen wird ohne vorher durch _GDIPlus_Shutdown() beendet worden zu sein?

    Es würde ja mehrere Möglichkeiten geben wo _GDIPlus_Startup() und _GDIPlus_Shutdown() hingeschrieben wird.

    V1

    Spoiler anzeigen
    [autoit]

    #include <GDIPlus.au3>

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

    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild1.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild2.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild3.png") ;Pfad zur .png

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

    Func _PNGtoJPG($PNG)
    Local $hImage, $sCLSID
    Local $File = FileGetLongName($PNG)
    _GDIPlus_Startup()
    $hImage = _GDIPlus_ImageLoadFromFile($File)
    $sCLSID = _GDIPlus_EncodersGetCLSID("JPG")
    Local $NewJpg = StringTrimRight($File, 4)&".jpg"
    Local $Check = _GDIPlus_ImageSaveToFileEx($hImage, $NewJpg, $sCLSID)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_Shutdown()
    If $Check = True Then
    Return($NewJpg) ;Pfad zur neu erstellten .jpg
    ElseIf $Check = False Then
    Return(-1) ; ansonsten Rückgabewert "-1"
    EndIf
    EndFunc ;==>_PNGtoJPG

    [/autoit]

    V2

    Spoiler anzeigen
    [autoit]

    #include <GDIPlus.au3>

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

    _GDIPlus_Startup()

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

    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild1.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild2.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild3.png") ;Pfad zur .png

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

    _GDIPlus_Shutdown()

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

    Func _PNGtoJPG($PNG)
    Local $hImage, $sCLSID
    Local $File = FileGetLongName($PNG)
    $hImage = _GDIPlus_ImageLoadFromFile($File)
    $sCLSID = _GDIPlus_EncodersGetCLSID("JPG")
    Local $NewJpg = StringTrimRight($File, 4)&".jpg"
    Local $Check = _GDIPlus_ImageSaveToFileEx($hImage, $NewJpg, $sCLSID)
    _GDIPlus_ImageDispose($hImage)
    If $Check = True Then
    Return($NewJpg) ;Pfad zur neu erstellten .jpg
    ElseIf $Check = False Then
    Return(-1) ; ansonsten Rückgabewert "-1"
    EndIf
    EndFunc ;==>_PNGtoJPG

    [/autoit]

    V3

    Spoiler anzeigen
    [autoit]

    #include <GDIPlus.au3>

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

    _GDIPlus_Startup()

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

    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild1.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild2.png") ;Pfad zur .png
    $Pic = _PNGtoJPG(@ScriptDir&"\DeinBild3.png") ;Pfad zur .png

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

    _GDIPlus_Shutdown()

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

    Func _PNGtoJPG($PNG)
    Local $hImage, $sCLSID
    Local $File = FileGetLongName($PNG)
    _GDIPlus_Startup()
    $hImage = _GDIPlus_ImageLoadFromFile($File)
    $sCLSID = _GDIPlus_EncodersGetCLSID("JPG")
    Local $NewJpg = StringTrimRight($File, 4)&".jpg"
    Local $Check = _GDIPlus_ImageSaveToFileEx($hImage, $NewJpg, $sCLSID)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_Shutdown()
    If $Check = True Then
    Return($NewJpg) ;Pfad zur neu erstellten .jpg
    ElseIf $Check = False Then
    Return(-1) ; ansonsten Rückgabewert "-1"
    EndIf
    EndFunc ;==>_PNGtoJPG

    [/autoit]
  • GUI ruckelt

    • Tweaky
    • 31. Dezember 2011 um 14:09

    Für was ist ";~ GUICtrlSetState(-1, $GUI_DISABLE)" in Zeile 20 notwendig?

  • GUI ruckelt

    • Tweaky
    • 31. Dezember 2011 um 12:42

    Wow 8o
    funktioniert sehr gut.

    Muß man unbedingt 2x GuiCtrlCreatePic nehmen?
    Oder geht es so wie im Skript.

    Spoiler anzeigen
    [autoit]

    #region ;************ Includes ************
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GDIPlus.au3>
    #endregion ;************ Includes ************

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

    Opt("GUIOnEventMode", 1) ; 0=ausgeschaltet, 1=OnEvent Modus aktiviert

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

    Global Const $IMAGE_BITMAP = 0
    Global Const $STM_SETIMAGE = 0x0172
    Global $hPreviewBitmap

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

    Global $datei1 = "C:\Windows\Web\Wallpaper\Windows\img0.jpg"

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

    _GDIPlus_Startup() ;Vorschau

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

    Global $hPreviewGui = GUICreate("Foto", 710, 300)
    Global $idPreviewPic = GUICtrlCreatePic("", 10, 10, 300, 200)
    GUICtrlSetState(-1, $GUI_DISABLE)
    ;~ Global $idPreviewPic2 = GUICtrlCreatePic("", 400, 10, 300, 200)
    ;~ GUICtrlSetState(-1, $GUI_DISABLE)
    Global $idButtonLoad = GUICtrlCreateButton("Laden", 400, 250, 60, 40)
    GUICtrlSetOnEvent(-1, "Load")
    GUISetOnEvent($GUI_EVENT_CLOSE, "_beenden")
    _PreviewLoadImage($datei1, $idPreviewPic, 300, 200)
    GUISetState()

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

    While 1
    Sleep(10)
    WEnd

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

    Func _beenden()
    _GDIPlus_Shutdown()
    Exit
    EndFunc ;==>_beenden

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

    Func Load()
    Local $file = FileOpenDialog("Suche ein Bild aus", "", "Bilder (*.jpg;*png;*.bmp;*.gif)")
    If @error Then Return
    ;~ _PreviewLoadImage($file, $idPreviewPic2, 300, 200)
    _PreviewLoadImage($file, $idPreviewPic, 300, 200)
    EndFunc ;==>Load

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

    Func _PreviewLoadImage($sImgFile, $CtrlID, $iW, $iH, $iInterpolationMode = 7)
    Local $hImage = _GDIPlus_ImageLoadFromFile($sImgFile)
    Local $aResult = DllCall($ghGDIPDll, "uint", "GdipCreateBitmapFromScan0", "int", $iW, "int", $iH, "int", 0, "int", 0x0026200A, "ptr", 0, "int*", 0)
    Local $hBitmap = $aResult[6]
    Local $hGfxCtxt = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    DllCall($ghGDIPDll, "uint", "GdipSetInterpolationMode", "handle", $hGfxCtxt, "int", $iInterpolationMode)
    _GDIPlus_GraphicsDrawImageRect($hGfxCtxt, $hImage, 0, 0, $iW, $iH)
    Local $hHBitmap = _GDIPlus_BitmapCreateDIBFromBitmap($hBitmap)
    _GDIPlus_ImageDispose($hImage)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_GraphicsDispose($hGfxCtxt)
    _WinAPI_DeleteObject(GUICtrlSendMsg($CtrlID, $STM_SETIMAGE, $IMAGE_BITMAP, $hHBitmap))
    EndFunc ;==>_PreviewLoadImage

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

    Func _GDIPlus_BitmapCreateDIBFromBitmap($hBitmap)
    Local $tBIHDR, $Ret, $tData, $pBits, $hResult = 0
    $Ret = DllCall($ghGDIPDll, 'uint', 'GdipGetImageDimension', 'ptr', $hBitmap, 'float*', 0, 'float*', 0)
    If (@error) Or ($Ret[0]) Then Return 0
    $tData = _GDIPlus_BitmapLockBits($hBitmap, 0, 0, $Ret[2], $Ret[3], $GDIP_ILMREAD, $GDIP_PXF32ARGB)
    $pBits = DllStructGetData($tData, 'Scan0')
    If Not $pBits Then Return 0
    $tBIHDR = DllStructCreate('dword;long;long;ushort;ushort;dword;dword;long;long;dword;dword')
    DllStructSetData($tBIHDR, 1, DllStructGetSize($tBIHDR))
    DllStructSetData($tBIHDR, 2, $Ret[2])
    DllStructSetData($tBIHDR, 3, $Ret[3])
    DllStructSetData($tBIHDR, 4, 1)
    DllStructSetData($tBIHDR, 5, 32)
    DllStructSetData($tBIHDR, 6, 0)
    $hResult = DllCall('gdi32.dll', 'ptr', 'CreateDIBSection', 'hwnd', 0, 'ptr', DllStructGetPtr($tBIHDR), 'uint', 0, 'ptr*', 0, 'ptr', 0, 'dword', 0)
    If (Not @error) And ($hResult[0]) Then
    DllCall('gdi32.dll', 'dword', 'SetBitmapBits', 'ptr', $hResult[0], 'dword', $Ret[2] * $Ret[3] * 4, 'ptr', DllStructGetData($tData, 'Scan0'))
    $hResult = $hResult[0]
    Else
    $hResult = 0
    EndIf
    _GDIPlus_BitmapUnlockBits($hBitmap, $tData)
    Return $hResult
    EndFunc ;==>_GDIPlus_BitmapCreateDIBFromBitmap

    [/autoit]

    Hat deine Version Nachteile gegenüber meiner Version aus dem ersten Post ^^

  • GUI ruckelt

    • Tweaky
    • 30. Dezember 2011 um 22:47

    Sorry, verstehe nur Bahnhof.
    Wofür eine Animation ?(
    Außerdem will ich die Größe des Bildes beim erstellen selbst bestimmen können.
    Es soll nachträglich noch ein anderes Bild geladen werden können (statt dem bereits vorhandenen.

  • GUI ruckelt

    • Tweaky
    • 30. Dezember 2011 um 22:22

    Nein, es kommt noch mehr in die GUI rein :(

  • GUI ruckelt

    • Tweaky
    • 30. Dezember 2011 um 20:19

    Hi,
    folgendes Skript funktioniert so weit ganz gut

    Spoiler anzeigen
    [autoit]

    #region ;************ Includes ************
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GDIPlus.au3>
    #endregion ;************ Includes ************

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

    Opt("GUIOnEventMode", 1) ; 0=ausgeschaltet, 1=OnEvent Modus aktiviert

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

    Global $hPreviewBitmap

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

    Global $datei1 = "C:\Windows\Web\Wallpaper\Windows\img0.jpg"

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

    _GDIPlus_Startup() ;Vorschau

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

    Global $hPreviewGui = GUICreate("Foto", 350, 250)
    Global $hPreviewGraphic = _GDIPlus_GraphicsCreateFromHWND($hPreviewGui)
    GUISetOnEvent($GUI_EVENT_CLOSE, "_beenden")
    GUISetState()

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

    _PreviewLoadImage($datei1)
    GUIRegisterMsg($WM_PAINT, 'WM_PAINT')

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

    While 1
    Sleep(10)
    WEnd

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

    Func _beenden()
    _GDIPlus_BitmapDispose($hPreviewBitmap)
    _GDIPlus_GraphicsDispose($hPreviewGraphic)
    _GDIPlus_Shutdown()
    Exit
    EndFunc ;==>_beenden

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

    Func _PreviewLoadImage($sImgFile)
    $hPreviewBitmap = _GDIPlus_BitmapCreateFromFile($sImgFile)
    _GDIPlus_GraphicsDrawImageRect($hPreviewGraphic, $hPreviewBitmap, 10, 10, 300, 200)
    EndFunc ;==>_PreviewLoadImage

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

    Func WM_PAINT($hWnd, $Msg, $wParam, $lParam)
    If $hWnd = $hPreviewGui Then _GDIPlus_GraphicsDrawImageRect($hPreviewGraphic, $hPreviewBitmap, 10, 10, 300, 200)
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_PAINT

    [/autoit]

    Wenn ich jedoch die GUI teilweise aus dem Bildschirm rein- und wieder rausschiebe, so ruckelt die GUI etwas.
    Dies leigt wohl am neuzeichnen der Grafik.

    Kann man dies irgendwie verhindern?

    Getestet mit Win 7 64bit.

  • Update der Übersetzseite für die Hilfe auf 3.3.8.1

    • Tweaky
    • 24. Dezember 2011 um 12:47

    Hi,
    nach 1,5 Jahren ist es wieder soweit.
    Durch die neue Finalversion 3.3.8.1 sollten wir die deutsche Hilfe wieder aktualisieren.
    Momentan funktioniert die altbewährte Übersetzseite noch nicht, aber ich bin mir sicher wir bekommen auch dies hin.

    Durch die neue Version hat sich viel verändert:
    0 ungültige Funktionen, Beispiele, htm-Seiten
    46 neue Funktionen, Beispiele, htm-Seiten
    3401 geänderte Funktionen, Beispiele, htm-Seiten

    Nur gemeinsam können wir dies schaffen.

    Wir benötigen fleißige Übersetzer und Kontrollleser.

    Wenn die Übersetzseite wieder online ist wird es hier verkündet.

    Ich hoffe wir können auf euch zählen :)

  • PC-Hilfe- Script-Fehler

    • Tweaky
    • 11. Dezember 2011 um 19:58

    steht doch in der console drin was fehlt

    Zitat

    C:\test.au3(44,3) : ERROR: missing EndIf.

  • im Explorer markierte Datei - in GUI anzeigen

    • Tweaky
    • 7. Dezember 2011 um 22:00

    Danke euch für die hilfreichen Antworten ;)

    Der Link von Cheater Dieter enthält die Lösung.

    Danke :thumbup:

  • im Explorer markierte Datei - in GUI anzeigen

    • Tweaky
    • 6. Dezember 2011 um 19:41

    Hi,
    Man kann ja eine Datei vom Explorer auf eine GUI ziehen.
    So kann man den Dateinamen der Datei ermitteln.

    Gibt es auch eine Möglichkeitden Dateinamen einer im Explorer markierten Datei in der GUI ohne Drag und Drap anzeigen zu lassen :?:

  • Differenz zwischen 2 Datumsangaben

    • Tweaky
    • 31. Oktober 2011 um 19:27

    Schau dir die Hilfe genauer an.
    Der fehlt in deinem Script der Eintrag "#include <Date.au3>"

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™