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

Beiträge von black_skorpi

  • StringRegExp

    • black_skorpi
    • 11. Februar 2013 um 18:11

    @Crhistopf
    Klar, und ich will es mit konditionalen Pattern machen. :D Fail.
    Aber um das Beispiel aus dem ersten Post noch einzuschließen:

    [autoit]

    #include <Array.au3>

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

    $sRegRead = " <NO NAME> REG_SZ C:\Programme\Adobe\Reader 8.0\Reader"

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

    $aResult = StringRegExp(StringRegExpReplace($sRegRead, "\s+(.*)", "$1"), "(<NO NAME>|.+)\s(REG_\w+)\s(.*)", 3)
    _ArrayDisplay($aResult)

    [/autoit]

    Als Pattern an sich will es bei mir einfach nicht funktionieren, ich gebs auf. Alles trollt :pinch:

  • StringRegExp

    • black_skorpi
    • 11. Februar 2013 um 15:43

    Das mit den TAB's ist ganz einfach. ;)
    Einfach die Leerzeichen durch

    Code
    \s

    ersetzen, die am besten durch die sogenanntern "Wiederholungszeichen" (Quantifizer) absichern.
    Das sähe dann so aus:

    [autoit]

    #include <Array.au3>

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

    $sReg = "ENU_GUID REG_SZ {AC76BA86-7AD7-1031-7B44-AA1000000001}"
    If StringInStr($sReg, "<NO NAME>") Then ; Ausnahmefall für NO NAME
    $aSplit = StringRegExp($sReg, "([^ ]+)\s+([^ ]+)\s+(.+)", 3)
    _ArrayDisplay($aSplit)

    [/autoit]


    Wenn das wirklich in einem Durchgang passieren soll, muss man schon tief in die Trickkiste greifen, um das zu schaffen. :D
    Edit: Damit meinte ich den Ausnahmefall "<NO NAME>".

  • StringRegExp

    • black_skorpi
    • 11. Februar 2013 um 15:01

    name22: Wie im Beispiel kann als erster Wert ja noch "<NO NAME>" kommen, aber dafür sollte eine simple Abfrage über StringInStr() reichen, um das zu ermitteln. :P
    Sonst wirds ja recht kompliziert, das alles in einen "Filter" zu stecken. :D

    MfG black_skorpi

  • Über die String-Dekompression

    • black_skorpi
    • 10. Februar 2013 um 03:48

    Nächtlicher Spätpost: (ich wollte das noch loswerden :D )

    Ich hab mal ein bisschen rumprobiert und versucht, die bestehende Funktion zu beschleunigen.
    Das Erste, was ich bemerkt habe: StringRegExpReplace() ist ca. 6x schneller als StringReplace()

    Das bringt schonmal was. Allerdings geht es auch ohne Replace, der jedes mal den ganzen String durchwühlt.
    Man fügt den String einfach nach und nach zusammen: (hat echt eine Weile gedauert, bis ich auf den Gedanken gekommen bin :pinch: )

    [autoit]

    Func Decompress($sString)
    Local $sRet = "", $aTemp = StringRegExp($sString, "(.*?)\[(.:\d*)\]", 3)
    For $i = 0 To Int((UBound($aTemp) - 1) / 2)
    $sRet &= $aTemp[$i*2] & _(StringLeft($aTemp[$i*2+1], 1), StringTrimLeft($aTemp[$i*2+1], 2))
    Next
    If Not (StringRight($sString, 1) = "]") Then Return $sRet & StringRegExpReplace($sString, ".*\]", "") ; Kann man auch durch eine Schleife ersetzen, die das ohne den Replace macht, kostet aber viele Bytes und auf das bisschen an Geschwindigkeit kommts dann auch nicht drauf an
    Return $sRet
    EndFunc

    [/autoit]


    Das macht dann bei mir ungefähr die zwölffache Geschwindigkeit.
    Ist zwar noch lange nicht akzeptabel, aber ich glaube nicht, dass man mit der bestehenden Methode noch viel mehr rausholen kann.

    Ich hoffe, es hilft trotzdem irgendwie ;)

    MfG black_skorpi

  • [Wettbewerb] C² - Award (international)

    • black_skorpi
    • 6. Februar 2013 um 20:33

    Gefällt mir. Ist ja auch deutlich leichter zu verwalten.

  • [Wettbewerb] C² - Award (international)

    • black_skorpi
    • 5. Februar 2013 um 23:37

    Hab es leider nicht sofort gesehen.
    Ich bin aber auch wieder dabei ;)

    Allerdings ist mir noch unklar, wie die Bewertung vonstatten gehen soll. Das sollte man vielleicht nochmal genau klären.
    (Ich vermute mal, das "beste" Skript in der korrekten Form gewinnt.)

    MfG black_skorpi

  • Cubic Code Award - Vorbei

    • black_skorpi
    • 25. August 2012 um 04:00

    Keine Perfektion, aber es ist fertig :D
    Eig. sollte noch an anderen Stellen gekürzt werden, aber naja :( Die pixelige Schrift hat zu viele Zeilen verbraucht. Die alte Version mit der Pixelschrift und in relativ lesbar häng ich für Interessenten auch noch an, da steht auch der Autor der UDF für die geniale Funktion, ohne irgendwas externes BMP's zu erstellen, drin ;)

    Joa, bekannte Bugs: Bildgrößen, die nicht glatt durch 4 teilbar sind, werden nicht richtig abgespeichert.
    Funktion: Simple Sketch sagt alles, oder?! :D

    MfG black_skorpi

    PS: Hoffendlich gefällt es euch

    Dateien

    simple_sketch.au3 5,2 kB – 570 Downloads simple_sketch_old.au3 5,11 kB – 576 Downloads
  • Cubic Code Award - Vorbei

    • black_skorpi
    • 24. August 2012 um 14:56

    Entspricht in etwa dem, was chesstiger gemacht hat, nur in deutlich größerer Ausführung. Ich denke auch nicht, dass das zum nächsten Thema passt und wenn will ich dann auch ein neues machen.
    Wenn es jemanden interessiert, poste ich das Script hier nochmal rein, sobald es fertig ist. (Das muss einfach fertiggestellt werden :D)

  • Cubic Code Award - Vorbei

    • black_skorpi
    • 24. August 2012 um 14:50

    Verdammt, ich wollte eigentlich auch noch mitmachen, kann das script aber erst jetzt fertigstellen :(
    Naja, blöd gelaufen :S Hätte mich mal per PN "anmelden" sollen :D

    Trotzdem, coole Scripte sind hier entstanden und ich muss sagen, dass es wirklich mal was tolles war, so anders zu denken.
    Sonst denkt man immer: Wie setze ich das um.
    Hier war die Denkweise eher: Wie bekomme ich möglichst viel Funktionsumfang ind möglichst wenig Code.
    Ich hab einfach deutlich länger an einzelnen Funktionen gearbeitet, um sie kompakt zu halten. Das sollte ich auch in normalen Scripten mal machen.

    Also: Wieder mal was dazugelernt. Hat echt Spaß gemacht, auch wenn mein Script jetzt nicht dabei ist :(

  • Cubic Code Award - Vorbei

    • black_skorpi
    • 21. August 2012 um 22:49

    Pff, _IsPressed() kann man wirklich simpel ersetzen. Und außerdem benutzt das ja einen DllCall.
    Nein, es geht um was anderes mit viel rumgerechne, aber dann ist ja alles klar. Wollte mich nur absichern.

    PS: Autor davon wird natürlich vermerkt, wenn ich das ausnahmsweise in eine Kommentarzeile schreiben darf... Sonst bekommt er halt einen unbenutzten String :D

  • Cubic Code Award - Vorbei

    • black_skorpi
    • 21. August 2012 um 22:23

    Kurze Frage:
    Ist es erlaubt, den Code eines Includes zu nutzen, um die Funktion zu implementieren, die man braucht? Also nicht den Include an sich, sondern nur einen Teil des Inhaltes. (umgeschrieben)
    Nachmachen wäre für mich unmöglich. Und ich bezweifle auch, dass es eine andere Möglichkeit für das gibt, was ich machen will, ohne einen DllCall zu verwenden.

    MfG black_skorpi

  • Video-Vorschau / Bild aus .avi/video file ??

    • black_skorpi
    • 12. August 2012 um 14:01

    Wenn du nicht von externen Programmen abhängig sein willst, solltest du dir das hier mal angucken.
    Mit dieser UDF kannst du auf das von Windows genutzte DirectShow (z. B. der WMP) zugreifen. Das holt sich alle benötigten Codecs aus dem System (standartmäßig sollte da AVI mit bei sein, Win7 kann sogar mp4).
    Nicht die eleganteste Methode, da man für Thumbnails dann ein verstecktes GUI, eine gemutete Videoinstanz und einen kleinen skip bis zum Frame für dein Thumbnail braucht, aber es funktioniert, das speichern geht einfach via GDIPlus und ggf. kann man gleich noch einen Videoplayer basteln. ;)

    MfG black_skorpi

  • RGB Farbcode über HSL Farbcode verändern (Sättigung & Helligkeit)

    • black_skorpi
    • 3. August 2012 um 15:15

    Danke BugFix, das funktioniert klasse.
    Somit wäre das Thema beendet und eine weitere UDF hat die Wege zu mir gefunden :D

  • RGB Farbcode über HSL Farbcode verändern (Sättigung & Helligkeit)

    • black_skorpi
    • 3. August 2012 um 02:13

    Hi com,

    leider stellte sich heraus, dass ich mit Farben nicht rechnen kann. Daher wollte ich mir von einer Funktion helfen lassen, um Sättigung und Helligkeit etwas zu bearbeiten.
    Paint.Net hat es vorgemacht, aber AutoIt...
    Aus irgendeinem Grund kann man den RGB-Farbcode nicht einfach in einen HSL-Farbcode konvertieren, ein paar Werte verändern und dann wieder zurückkonvertieren.
    Frage also: Wie geht das (richtig)?

    Ich hab hier einen kleinen Testcode, da kann man jeweils ein Attribut ändern und das meistens perfekt!
    Wenn man allerdings zwei Werte gleichzeitig ändern will, scheitert es. Dasselbe beim Ändern nacheinander. (Ohne Z. 45ff ist das ganze Farbenroulette)

    Spoiler anzeigen
    [autoit]

    #include <Color.au3>

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

    Global $iMode = 0, $aHSL[3] = ["H","S","L"]

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

    $hWnd = GUICreate("Farbtest", 200, 200)
    $hLabel = GUICtrlCreateLabel("", 100, 0, 100, 200)
    $hInput1 = GUICtrlCreateInput("", 0, 0, 100, 50)
    $hInput2 = GUICtrlCreateInput("", 0, 50, 100, 50)
    $hInput3 = GUICtrlCreateInput("0", 0, 125, 100, 25)
    $hButton = GUICtrlCreateButton("H um 0 verändern", 0, 150, 100, 50)
    GUISetState()

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

    While 1
    Sleep(20)
    Switch GUIGetMsg()
    Case -3
    Exit
    Case $hButton
    $iMode += 1
    If $iMode = 3 Then $iMode = 0
    EndSwitch
    GUICtrlSetData($hButton, $aHSL[$iMode] & " um " & GUICtrlRead($hInput3) & " verändern.")
    $sFarbcode = GUICtrlRead($hInput1)
    $sFarbcode = _ColorRGBChangeHSL($sFarbcode, $aHSL[$iMode], Int(GUICtrlRead($hInput3)))
    GUICtrlSetData($hInput2, $sFarbcode)
    GUICtrlSetBkColor($hLabel, $sFarbcode)
    WEnd

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

    Func _ColorRGBChangeHSL($i_Color, $s_Opt, $i_Int)
    Local $a_Colors = _ColorGetRGB($i_Color)
    ;~ ConsoleWrite($a_Colors[0] & "|" & $a_Colors[1] & "|" & $a_Colors[2] & @CRLF)
    $a_Colors = _ColorConvertRGBtoHSL($a_Colors) ; $H 240, $S 240, $L 120
    ;~ ConsoleWrite(($a_Colors[0] * 1.5) & "|" & ($a_Colors[1] / 2.4) & "|" & ($a_Colors[2] / 1.2) & @CRLF)
    Switch $s_Opt
    Case "H"
    $a_Colors[0] = (($a_Colors[0] * 1.5) + $i_Int) / 1.5
    Case "S"
    $a_Colors[1] = (($a_Colors[1] / 2.4) + $i_Int) * 2.4
    Case "L"
    $a_Colors[2] = (($a_Colors[2] / 1.2) + $i_Int) * 1.2
    EndSwitch
    ;~ ConsoleWrite(($a_Colors[0] * 1.5) & "|" & ($a_Colors[1] / 2.4) & "|" & ($a_Colors[2] / 1.2) & @CRLF)
    $a_Colors = _ColorConvertHSLtoRGB($a_Colors)
    ;~ ConsoleWrite($a_Colors[0] & "|" & $a_Colors[1] & "|" & $a_Colors[2] & @CRLF)
    If True Then ; Nimmt man das hier Weg, dann kommt nie die vorherige Farbe raus, sollte man nichts verändern, vermutlich wird nicht gerundet (Änderungen von 0.000...001)
    $a_Colors[0] = Round($a_Colors[0])
    $a_Colors[1] = Round($a_Colors[1])
    $a_Colors[2] = Round($a_Colors[2])
    EndIf
    Return "0x" & Hex($a_Colors[0], 2) & Hex($a_Colors[1], 2) & Hex($a_Colors[2], 2)
    EndFunc

    [/autoit]


    Weiß jemand, warum das ganze nicht funktionieren will oder hat sogar eine Lösung dafür?

  • Windows Media Player Objekt Videowiedergabe (.avi;.mkv;.mp4)

    • black_skorpi
    • 4. Januar 2011 um 11:26

    Eine Einstellung scheint es verlangsamt zu haben, jetzt klappt bei mir auch alles prefekt.
    Folgende Einstellung solltet ihr weglassen, damit es klappt:

    [autoit]

    .windowlessVideo = True

    [/autoit]

    Vista Home Premium 64 Bit

    Trotzdem Danke an alle, die sich damit beschäftigt haben. ;)

  • Windows Media Player Objekt Videowiedergabe (.avi;.mkv;.mp4)

    • black_skorpi
    • 4. Januar 2011 um 01:05

    Hi com,

    ich habe da so ein kleines Problem mit dem Windows Media Player Objekt bei der Wiedergabe von Videodateien der Formate (.avi;.mkv;.mp4 mehr habe ich aber auch nicht getestet). Wegen dem Format .mkv, ich habe einen Zusatzcodec installiert, weswegen es klappt.

    Nun zum Problem:

    .avi -> Bei .avi Dateien ist ein Bild vorhanden, allerdings stockt es stark (schätze knapp 1fps). Wenn ich aber per Kontextmenü auf Vollbild schalte, läuft alles flüssig.
    .mkv -> Siehe .avi
    .mp4 -> Dies scheint ein Sonderfall zu sein, denn es kommt nur ein Schwarzbild. Wenn ich nun auf Vollbild schalte, läuft das Video ganz normal und flüssig.

    Edit1: Code überabreitet, was geändert wurde im letzten Post. Nun klappt alles ohne Probleme.

    Spoiler anzeigen
    [autoit]

    #AutoIt3Wrapper_UseX64 = n

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

    $hWnd = GUICreate("Windows Media Player Test", 1280, 720)
    $oWMP = ObjCreate("WMPlayer.OCX")
    $hEmbedd = GUICtrlCreateObj($oWMP, 0, 0, 1280, 720)
    $oWMP.URL = FileOpenDialog("Videodatei auswählen", @MyDocumentsDir, "(*.avi;*.mkv;*.mp4)")

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

    With $oWMP
    .settings.volume = 100
    .stretchToFit = True
    .fullscreen = True
    .uiMode = 'none'
    .controls.play()
    EndWith

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

    GUISetState(@SW_SHOW)

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

    Do
    Until GUIGetMsg() = -3

    [/autoit]
  • _GDIPlus_BitmapLoadFromFile spezifische Größe

    • black_skorpi
    • 29. November 2010 um 20:39

    Natürlich verbessert das die Qualität, aber ich seh keinen Unterschied. Wenn ich die Funktion überarbeite werde ich es einbauen. Trotzdem danke.

    MfG black_skorpi

  • _GDIPlus_BitmapLoadFromFile spezifische Größe

    • black_skorpi
    • 29. November 2010 um 20:26

    Ja eukalyptus, dann muss ich aber wiederrum da das draufzeichnen und dann

    [autoit]

    _GDIPlus_BitmapCloneArea()

    [/autoit]

    verwenden. Ich bin mir da nicht so sicher, ob das schneller ist. Ich könnte es mal testen, aber so funktioniert es ja auch.

    MfG black_skorpi

  • _GDIPlus_BitmapLoadFromFile spezifische Größe

    • black_skorpi
    • 29. November 2010 um 20:09

    Hi com,

    hier mal wieder was von mir, nur eine Kleinigkeit. Damit ist es möglich, ein Bild zu laden (GDIPlus) und ihm eine spezifische Größe zu geben. Nach wunsch können Verhältnisse eingehalten werden. Genaueres steht im Beispiel.
    Viel Spaß damit ;)

    Spoiler anzeigen
    [autoit]

    #cs Kommentar:
    Diese Funktion läd euch ein Bild wie _GDIPlus_BitmapCreateFromFile in ein Bitmapobjekt, nur dass ihr
    bestimmen könnt, welche Größe es hat. Anpassungsfähigkeit ist gegeben.
    Der Zweck besteht darin, dass ein großes Bild nicht ständig wieder kleiner gezeichnet werden muss, was Vorteile hat,
    besonders bei Performence. In meinem Test hatte ich statt 22-30ms nurnoch 6-10ms Zeichenzeit.
    Viel Spaß damit ;)
    PS: Wer will kann diese Funktion auch _GDIPlus_BitmapLoadSpecialSize nennen.
    #ce
    #include <GDIPlus.au3> ; benötigt
    $hWnd = GUICreate("Beispiel Bitmap Laden", 600, 400)
    GUISetState(@SW_SHOW)
    _GDIPlus_StartUp()
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hWnd)
    $sPath = FileOpenDialog("Bild auswählen", @MyDocumentsDir, "(*.jpg;*.bmp;*.gif;*.png)")
    $hTime = TimerInit()
    $hBitmap = _GDIPlus_BitmapLoadFromFile($sPath, 600, 400) ; Es wird automatisch angepasst, das angegebene Rechteck wird nicht überschritten
    ; Um eine feste Höhe anzulegen, setzt ihr die Weite auf -1 (anpassen), für eine feste Weite die Höhe auf -1
    WinSetTitle("Beispiel Bitmap Laden", "", Round(TimerDiff($hTime), 2) & "ms zum Laden benötigt")
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, _GDIPlus_ImageGetWidth($hBitmap), _GDIPlus_ImageGetHeight($hBitmap))
    While 1 * Sleep(30)
    If GUIGetMsg() = -3 Then ExitLoop
    WEnd
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_Shutdown()
    GUIDelete($hWnd)
    Exit

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

    ; #FUNCTION# ====================================================================================================================
    ; Name...........: _GDIPlus_BitmapLoadFromFile
    ; Description ...: Erstellt ein Bitmapobjekt mit einer Spezifischen Größe
    ; Syntax.........: _GDIPlus_BitmapLoadFromFile($s_Path[, $i_Widht[, $i_Height[, $i_Opt]]])
    ; Parameters ....: $s_Path - Pfad der Bilddatei
    ; $i_Widht - Weite des Bitmapobjektes (-1 = der Höhe im Verhältnis anpassen)
    ; $i_Height - Höhe des Bitmapobjektes (-1 = der Weite im Verhältnis anpassen)
    ; $i_Opt - (optional) Verhältnisse automatisch ausrichten (1=Ja/0=Nein; Standart 1)
    ; Return values .: Sucess - Bitmapobjekt mit dem geladenen Bild
    ; Failure - 0 und setzt @error auf
    ; |1 - Dateipfad ungültig
    ; |2 - Option falsch gesetzt
    ; Author ........: black_skorpi (@autoit.de)
    ; Example .......: Yes
    ; ===============================================================================================================================
    Func _GDIPlus_BitmapLoadFromFile($s_Path, $i_Widht, $i_Height, $i_Opt = 1)
    If (($i_Opt <> 0) And ($i_Opt <> 1)) Or (($i_Widht < 0) And ($i_Height < 0)) Then SetError(2, 0, 0)
    Local $h_Image = _GDIPlus_ImageLoadFromFile($s_Path), $s_ExY = "$i_Widht", $s_ExX = "$i_Height"
    If @error Then Return SetError(1, 0, 0)
    Local $a_Verh[3] = [_GDIPlus_ImageGetHeight($h_Image),_GDIPlus_ImageGetWidth($h_Image),_GDIPlus_ImageGetHeight($h_Image) / _GDIPlus_ImageGetWidth($h_Image)]
    If $i_Opt = 1 Then
    If $a_Verh[2] < 1 Then
    $i_Height = -1
    ElseIf $a_Verh[2] > 1 Then
    $i_Widht = -1
    ElseIf $a_Verh[2] = 1 Then
    If $i_Widht > $i_Height Then
    $i_Widht = $i_Height
    Else
    $i_Height = $i_Widht
    EndIf
    EndIf
    EndIf
    Switch -1
    Case $i_Height
    $s_ExX = "$i_Widht * $a_Verh[2]"
    Case $i_Widht
    $s_ExY = "$i_Height / $a_Verh[2]"
    EndSwitch
    Local $h_Graphic = _GDIPlus_GraphicsCreateFromHWND(DllCall("user32.dll", "hwnd", "GetDesktopWindow"))
    Local $h_Bitmap = _GDIPlus_BitmapCreateFromGraphics(Execute($s_ExY), Execute($s_ExX), $h_Graphic), $h_Buffer = _GDIPlus_ImageGetGraphicsContext($h_Bitmap)
    _GDIPlus_GraphicsSetSmoothingMode($h_Buffer, 2)
    DllCall($ghGDIPDll, "int", "GdipSetInterpolationMode", "handle", $h_Buffer, "int", 7)
    _GDIPlus_GraphicsDrawImageRectRect($h_Buffer, $h_Image, 0, 0, $a_Verh[1], $a_Verh[0], 0, 0, Execute($s_ExY), Execute($s_ExX))
    _GDIPlus_GraphicsDispose($h_Graphic)
    _GDIPlus_GraphicsDispose($h_Buffer)
    _GDIPlus_ImageDispose($h_Image)
    Return $h_Bitmap
    EndFunc ;==>_GDIPlus_BitmapLoadFromFile

    [/autoit]

    PS: Die Performence kann extrem verbessert werden!!

    Edit2: Code überarbeitet (mit e's Vorschlag) und gekürzt, Funktion nun um 2-5ms schneller
    Edit3: Parameter leicht verändert, Funktion nurnoch an den Desktop gebunden (nicht mehr an ein GUI)
    Edit4: Bug mit quadratischen Bildern gefixxt. Nun sollte alles prima laufen.
    Edit5: Wieder minimal abgeändert, Problem mit überdimensionalen Bildern entdeckt (ich habs mit 6000x6000 getestet, Grund unbekannt)

  • Bitmap mit spezifischer größe erstellen

    • black_skorpi
    • 29. November 2010 um 14:07

    Ich will mit diesem Objekt zeichnen.
    Die diskusion über den Sinn hatte ich schon einmal. Es geht darum, ein Bild, welches z. B. 1000x1000 groß ist auf 100x100 runterzuziehen, ohne dass ich es jedes mal von 1000x1000 auf 100x100 runterzeichne. Dazu will ich es einmal in ein 100x100 Bitmapobjekt zeichnen und dann dieses Bitmapobjekt zum zeichnen verwenden.
    Mit einem Zusatzgui könnte es klappen, da kann ich ja was aufs Bitmap raufzeichnen (also das von dem Gui) und mit _GDIPlus_BitmapCloneArea() mir dieses Bild in ein Bitmap holen und das Fenster wieder zerstören. Das ist mir allerdings zu viel und ich dachte es ginge einfacher (wenn das überhaupt so funktionieren kann).

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™