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

Beiträge von BugFix

  • Task auf Server startet nicht

    • BugFix
    • 16. Dezember 2008 um 22:56

    Ich sammle all eure Tipps und werde Anfang Januar (dann bin ich wieder vor Ort) mal testen, ob ich es hinbekomme. Danke euch.

  • Hilfe mit SQL Rückgabe

    • BugFix
    • 16. Dezember 2008 um 22:47

    Ich habe leider kein MySQL, hoffe aber dir vom Ansatz her helfen zu können. "$sql_query_hnum = _SQLQuery($sql, "Select dbo.xxx......" - Was gibt dieses Query zurück? Ich verwende nach Möglichkeit Execute für das Query um ein Recordset zu erhalten. Das hat den Vorteil, dass bei einer erfolglosen Abfrage dann halt ein leeres Recordset zurückgegeben wird. Und das kannst du dann leicht abfragen.

    Hier mal noch die kpl. Errorfunktion:

    Spoiler anzeigen
    [autoit]

    Global $oMyError = ObjEvent("AutoIt.Error","MyErrFunc")
    ;...
    ;...
    Func MyErrFunc()
    Msgbox(0,"AutoItCOM Test","Ein COM-Fehler ist aufgetreten !" & @CRLF & @CRLF & _
    "err.description is: " & @TAB & $oMyError.description & @CRLF & _
    "err.windescription:" & @TAB & $oMyError.windescription & @CRLF & _
    "err.number is: " & @TAB & hex($oMyError.number,8) & @CRLF & _
    "err.lastdllerror is: " & @TAB & $oMyError.lastdllerror & @CRLF & _
    "err.scriptline is: " & @TAB & $oMyError.scriptline & @CRLF & _
    "err.source is: " & @TAB & $oMyError.source & @CRLF & _
    "err.helpfile is: " & @TAB & $oMyError.helpfile & @CRLF & _
    "err.helpcontext is: " & @TAB & $oMyError.helpcontext )
    Local $err = $oMyError.number
    If $err = 0 Then $err = -1
    Local $g_eventerror = $err
    Endfunc

    [/autoit]
  • r1fLeX verabschiedet sich

    • BugFix
    • 14. Dezember 2008 um 22:40

    @r1fLeX: Sicherlich war der Kommentar von anno2008 nicht unbedingt angebracht (anno2008, reiß dich bitte zusammen) - das sollte aber nicht heißen, dass du darauf in unflätiger Weise reagierst. Und da ich keine Lust auf solchen Kinderkram habe und auch nicht unbedingt Verwarnungen vergeben möchte, schließe ich hiermit dieses Kapitel!

    [Thread closed]

  • aktuelle bildschirmauflösung

    • BugFix
    • 14. Dezember 2008 um 20:11
    Spoiler anzeigen
    [autoit]

    $strComputer = "."
    $objWMIService = ObjGet("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & $strComputer & "\root\cimv2")

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

    $colItems = $objWMIService.ExecQuery _
    ("Select * from Win32_DisplayControllerConfiguration")

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

    For $objItem in $colItems
    ConsoleWrite( "Bits Per Pixel: " & $objItem.BitsPerPixel & @CRLF)
    ConsoleWrite( "Color Planes: " & $objItem.ColorPlanes & @CRLF)
    ConsoleWrite( "Device Entries in a Color Table: " & _
    $objItem.DeviceEntriesInAColorTable & @CRLF)
    ConsoleWrite( "Device Specific Pens: " & $objItem.DeviceSpecificPens & @CRLF)
    ConsoleWrite( "Horizontal Resolution: " & $objItem.HorizontalResolution & @CRLF)
    ConsoleWrite( "Name: " & $objItem.Name & @CRLF)
    ConsoleWrite( "Refresh Rate: " & $objItem.RefreshRate & @CRLF)
    ConsoleWrite( "Setting ID: " & $objItem.SettingID & @CRLF)
    ConsoleWrite( "Vertical Resolution: " & $objItem.VerticalResolution & @CRLF)
    ConsoleWrite( "Video Mode: " & $objItem.VideoMode & @CRLF)
    Next

    [/autoit]
  • Habe ein Problem mit mehreren GUIS

    • BugFix
    • 14. Dezember 2008 um 20:02
    [autoit]

    WinActivate($Form1)

    [/autoit]

    8o

  • Dateisuche in Ordner und allen Unterordnern - eine weitere Variante

    • BugFix
    • 14. Dezember 2008 um 17:35

    Hi,
    bin auf eine weitere Methode zum Durchsuchen von Ordnern/Unterordnern gestoßen. Hat selbst bei einer Suche im Root mit Datei in 4 Ebenen Tiefe nur 30 s gebraucht. :D

    [autoit]

    Local $ret = _SearchTreeForFile('C:\', 'qmark.acs')
    If $ret Then
    MsgBox(0, 'Gefunden', $ret)
    Else
    MsgBox(0, 'Nicht Gefunden', 'Datei nicht im Suchpfad')
    EndIf

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

    ;===============================================================================
    ; Function Name: _SearchTreeForFile($sRootPath, $sFileName)
    ; Description:: Dateisuche in einem Pfad und allen Unterpfaden
    ; Parameter(s): $sRootPath Startpfad der Suche
    ; $sFileName Name der gesuchten Datei
    ; Return Value(s): gefunden Pfad der gesuchten Datei
    ; n. gefunden 0
    ; Author(s): BugFix ([email='bugfix@autoit.de'][/email])
    ;===============================================================================
    Func _SearchTreeForFile($sRootPath, $sFileName)
    If StringRight($sRootPath, 1) <> '\' Then $sRootPath &= '\'
    Local $sOutputPathBuffer = ''
    Local $aRet = DllCall("imagehlp", 'long', 'SearchTreeForFile', 'str', _
    $sRootPath, 'str', $sFileName, 'str', $sOutputPathBuffer)
    If $aRet[0] = 1 Then
    Return $aRet[3]
    Else
    Return 0
    EndIf
    EndFunc ;==>_SearchTreeForFile

    [/autoit]
  • Einzelne Zeichen ersetzen

    • BugFix
    • 14. Dezember 2008 um 16:42

    Direkt im Edit-Ctrl kannst du das gewünschte Zeichen markieren ( _GUICtrlEdit_SetSel ) und dann ersetzen ( _GUICtrlEdit_ReplaceSel ).

  • Text auf GUI in jedem gewünschten Winkel

    • BugFix
    • 13. Dezember 2008 um 23:16

    So, noch eine (wohl letzte) Änderung. :D
    Parameter für Schrift- und Hintergrundfarbe hinzugefügt. s. Post 1

  • Text auf GUI in jedem gewünschten Winkel

    • BugFix
    • 13. Dezember 2008 um 21:26
    Zitat von funkey

    Du könntest noch eine Redraw-Parameter hinzufügen


    Der Tipp ist gut - werde ich gleich umsetzen und aktualisieren.

  • Text auf GUI in jedem gewünschten Winkel

    • BugFix
    • 13. Dezember 2008 um 20:43
    Zitat von funkey

    Wenn man ein '&' eingibt wird es nicht dargestellt. Erst '&&' stellt ein '&' dar. 3x& ergibt '&', 4x& ergibt dann '&&'


    Habe ich jetzt korrigiert - wird als normales Schriftzeichen dargestellt.

    Danke für den Tipp mit dem Löschen. Habe das Bsp. umgestellt - aber Kombination 'normale' Schrift od. Italic + unter/durchgestrichen.
    (s. 1. Post)

  • Text auf GUI in jedem gewünschten Winkel

    • BugFix
    • 13. Dezember 2008 um 18:41

    Hi,
    nachdem ich Dank kräftiger Unterstützung von progandy ( :thumbup: ) das Bsp. aus dem Api-Guide zum "RotateText" umsetzen konnte, habe ich daraus mal eine Funktion erstellt, damit es auch allgemeingültig verwendet werden kann. Ich denke, das könnte von größerem Interesse sein.
    Im angehängten Bsp. findet ihr eine Oberfläche, in der ihr die verschiedenen Parameter der Funktion ausprobieren könnt. Eine Möglichkeit, den geschriebenen Text zu löschen, habe ich noch nicht gefunden (außer mit Leerzeichen überschreiben ;) ). Vielleicht habt ihr ja eine Idee.
    Danke funkey für den Tipp zum Löschen.

    Edit: Habe auf Anregung von funkey noch den Parameter zum Neuzeichnen (und somit Löschen alter Beschriftung) der GUI mit Standardwert TRUE eingefügt.

    Edit: Nun noch Parameter für Schriftfarbe/Hintergrundfarbe eingefügt. Jetzt sollte es aber wirklich kpl. sein. ;)

    Spoiler anzeigen
    [autoit]

    ; ver 3.2.12.1
    #Include <WinAPI.au3>
    #include <GUIConstantsEx.au3>
    #include <StructureConstants.au3>
    #include <WindowsConstants.au3>

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

    Global $GUI = GUICreate('Test Rotation')
    GUICtrlCreateLabel('Text:', 10, 13, 50, 17)
    Global $In = GUICtrlCreateInput('Hallo!', 70, 10, 150, 20)
    Global $bt = GUICtrlCreateButton('Schreibe Text', 250, 10, 100, 20)
    Global $btDel = GUICtrlCreateButton('Lösche Text', 250, 40, 100, 20)
    GUICtrlCreateLabel('Pos. X:', 10, 43, 50, 17)
    Global $inX = GUICtrlCreateInput('80', 70, 40, 30, 20)
    GUICtrlCreateLabel('Pos. Y:', 110, 43, 50, 17)
    Global $inY = GUICtrlCreateInput('280', 170, 40, 30, 20)
    GUICtrlCreateLabel('Winkel:', 10, 73, 50, 17)
    Global $inDeg = GUICtrlCreateInput('30', 70, 70, 30, 20)
    GUICtrlCreateLabel('Höhe:', 110, 73, 50, 17)
    Global $inSize = GUICtrlCreateInput('60', 170, 70, 30, 20)
    GUICtrlCreateLabel('Breite:', 10, 103, 50, 17)
    Global $inWeight = GUICtrlCreateInput('400', 70, 100, 30, 20)
    GUICtrlCreateLabel('Font:', 110, 103, 50, 17)
    Global $inFont = GUICtrlCreateInput('Comic Sans MS', 170, 100, 200, 20)
    GUICtrlCreateGroup(' Stil ', 10, 130, 280, 40)
    Global $rDef = GUICtrlCreateRadio('Standard', 15, 145, 65)
    GUICtrlSetState(-1, $GUI_CHECKED)
    Global $rIt = GUICtrlCreateRadio('Italic', 85, 145, 45)
    Global $cbUn = GUICtrlCreateCheckbox('Underlined', 135, 145, 70)
    Global $cbSt = GUICtrlCreateCheckbox('StrikeOut', 215, 145, 70)
    GUICtrlCreateGroup("", -99, -99, 1, 1)
    GUICtrlCreateLabel('Farbe Schrift:', 10, 183, 80, 17)
    Global $inCol = GUICtrlCreateInput('', 90, 180, 60, 20)
    GUICtrlCreateLabel('Hintergrund:', 160, 183, 80, 17)
    Global $inbCol = GUICtrlCreateInput('', 230, 180, 60, 20)

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

    GUISetState()
    Global $Rect

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

    Do
    $msg = GUIGetMsg()
    If $msg = $bt Then
    Local $type = 1
    If BitAND(GUICtrlRead($rIt), $GUI_CHECKED) Then $type = 2
    If BitAND(GUICtrlRead($cbUn), $GUI_CHECKED) Then $type += 4
    If BitAND(GUICtrlRead($cbSt), $GUI_CHECKED) Then $type += 8
    Local $readFont = GUICtrlRead($inFont)
    If $readFont = '' Then $readFont = -1
    Local $col = GUICtrlRead($inCol), $bkcol = GUICtrlRead($inbCol)
    If $col = '' Then $col = -1
    If $bkcol = '' Then $bkcol = -1
    _WriteRotateText($GUI, GUICtrlRead($In), GUICtrlRead($inX), GUICtrlRead($inY), GUICtrlRead($inDeg), _
    GUICtrlRead($inSize), GUICtrlRead($inWeight), $type, $readFont, $col, $bkcol)
    ElseIf $msg = $btDel Then
    _WinAPI_RedrawWindow($GUI)
    EndIf
    Until $msg = $GUI_EVENT_CLOSE

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

    ;==================================================================================================
    ; Function Name: _WriteRotateText($hWnd, $sWrite, $iX, $iY, $iDeg, $iSize [, $iWeight=400 _
    ; [, $iType=1 [, $sFont=-1 [, $iCol=-1 [, $iBkCol=-1 [,$bRedraw=True]]]]]])
    ; Description: Schreibt einen Text mit bestimmtem Winkel in das angegebene Fenster
    ; Parameter(s): $hWnd Handle des Fensters
    ; $sWrite der zu schreibende Text
    ; $iX x-Position auf dem Fenster
    ; $iY y-Position auf dem Fenster
    ; $iDeg Rotationswinkel des Textes
    ; $iSize Höhe des Textes
    ; optional: $iWeight Fontbreite 0 - 1000 (Standard 400)
    ; optional: $iType Fonttyp 1=normal (Standard); 2=Italic; 4=Underline; 8=StrikeOut
    ; 1 oder 2 können mit 4 und 8 kombiniert werden (5;9 od. 6;10)
    ; optional: $sFont Fontname -1=Font der Form (Standard)
    ; optional: $iCol Fontfarbe -1=schwarz (Standard)
    ; optional: $iBkCol Hintergrundfarbe -1=Hintergrundfarbe des Fensters (Standard)
    ; optional: $bRedraw True=Fenster vorher neu zeichnen (vorige Beschriftung löschen - Standard)
    ; Requirement(s): #Include <WinAPI.au3>; #include <StructureConstants.au3>; #include <WindowsConstants.au3>
    ;==================================================================================================
    Func _WriteRotateText($hWnd, $sWrite, $iX, $iY, $iDeg, $iSize, $iWeight=400, $iType=1, $sFont=-1, $iCol=-1, $iBkCol=-1, $bRedraw=True)
    If $bRedraw Then _WinAPI_RedrawWindow($hWnd)
    Local $tRect = DllStructCreate($tagRECT)
    DllStructSetData($tRect, 'Left', $iX)
    DllStructSetData($tRect, 'Top', $iY)
    Local $rotate = $iDeg *10
    If ($rotate = 900) Or ($rotate = 1800) Or ($rotate = 2700) Then $rotate += 1
    Local $RotateMe = DllStructCreate($tagLOGFONT)
    DllStructSetData($RotateMe, 'Escapement', $rotate)
    DllStructSetData($RotateMe, 'Height', ($iSize * -20)/_WinAPI_TwipsPerPixelY())
    If $iWeight <> 400 Then DllStructSetData($RotateMe, 'Weight', $iWeight)
    If BitAND($iType, 2) Then DllStructSetData($RotateMe, 'Italic', True)
    If BitAND($iType, 4) Then DllStructSetData($RotateMe, 'Underline', True)
    If BitAND($iType, 8) Then DllStructSetData($RotateMe, 'StrikeOut', True)
    If $sFont <> -1 Then DllStructSetData($RotateMe, 'FaceName', $sFont)
    Local $rFont = _WinAPI_CreateFontIndirect($RotateMe)
    Local $hDC = _WinAPI_GetDC($hWnd)
    If $iCol <> -1 Then _WinAPI_SetTextColor($hDC, $iCol)
    If $iBkCol <> -1 Then _WinAPI_SetBkColor($hDC, $iBkCol)
    _WinAPI_SelectObject($hdc, $rFont)
    _WinAPI_DrawText($hDC, $sWrite, $tRect, BitOR($DT_NOCLIP,$DT_NOPREFIX))
    _WinAPI_ReleaseDC($hWnd, $hDC)
    EndFunc ;==>_WriteRotateText

    [/autoit]

    Edit: Hier mal eine Ansicht
    http://www.bilder-space.de/show.php?file=…19cXqB3AiTr.JPG

  • Spielfeld, 2D-Array

    • BugFix
    • 12. Dezember 2008 um 20:25
    Zitat von MatthiasG.

    ich bracuh für jedes Feld eine unterschiedliche... Wie krieg ich sowas hin? muss ich also doch einzelne Grafiken erstellen :?:

    Für jedes Kasterl ein Bild??? Was sollen das für Bilder sein - bei 5 x 5 Pixel siehst du doch eh nichts, selbst bei 20 x 20 ist ein Bild noch nicht erkennbar.

    Zitat von MatthiasG.

    Ja, das ist klar. Das weiß ich ja... ;) Ich meine, wie kommt der Computer darauf, sich für eine Zahl zu "entscheiden"?

    Ich glaube, es wird eine Rechenoperation auf Basis der aktuellen Zeit ausgeführt.

  • Spielfeld, 2D-Array

    • BugFix
    • 12. Dezember 2008 um 19:28
    Zitat von MatthiasG.

    Wie funktioniert Random eigentlich? Der Computer kann sich doch keine Zahl aus 1 und 0 "aussuchen", oder etwa doch :huh: ?(

    Du gibst den Bereich an, aus dem die 'Zufallszahl' ausgesucht wird. Hier in dem Bsp.

    [autoit]

    Random(1,4,1)

    [/autoit]

    Eine Integerzahl zwischen 1 und 4 wird ermittelt.

  • Spielfeld, 2D-Array

    • BugFix
    • 12. Dezember 2008 um 17:57

    Sag nochmal genau, wie dein Feld sein soll.
    - fixe Anzahl von quadratischen Flächen ?
    - dadrauf ein Bild legen ?

    Etwas OT:
    Beim Spielen mit der Grafik ist mir aufgefallen, dass es tatsächlich kein Random gibt :D
    Schau dir mal dieses Ergebnis an - trotz zufälliger Farbwahl entsteht ein regelmäßiges Muster. ;)

    Spoiler anzeigen
    [autoit]

    #include <GUIConstantsEx.au3>
    #include <StaticConstants.au3>
    #include <WindowsConstants.au3>
    Global $aCol[5] = [0, 0x0000FF, 0xFFD700, 0x00FF00, 0xFF0000]

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

    $Form = GUICreate("Form", 800, 600)
    $grafik = GUICtrlCreateGraphic(10, 10, 780, 580)
    For $x = 0 To 780 Step 5
    For $y = 0 To 580 Step 5
    GUICtrlSetGraphic($grafik, $GUI_GR_COLOR, 0xFFFFFF, $aCol[Random(1,4,1)])
    GUICtrlSetGraphic($grafik, $GUI_GR_RECT, $x, $y, 5, 5)
    Next
    Next

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

    GUISetState()

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

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

    [/autoit]
  • Winamp Playliste erstellen

    • BugFix
    • 12. Dezember 2008 um 10:51
    Zitat von nuts

    allgemein wäre es schöner wenn man statt dem ersten listview eine art browser hätte mit dem man durch die verzeichnisse seines computer browsen kann.


    Dan verwende doch Treeview.

  • HotKeySet

    • BugFix
    • 11. Dezember 2008 um 13:02
    Zitat von Jam00

    Ich hab LRS :!:


    Ja, und soll das jetzt etwa ein Freibrief für dich sein, deinen Text vor dem Posten nicht auf Fehler zu kontrollieren? :thumbdown:
    Gerade wenn du um dieses Problem weißt, sollte es doch kein großes Problem darstellen, deine Posts z.B. in Word mit aktivierter Rechtschreibprüfung zu erstellen und anschließend per Copy&Paste in dein Posting einzufügen. Sonst läufst du Gefahr, dass aufgrund der schlechten Lesbarkeit niemand mehr deine Fragen beantwortet.

  • Prüfung ob Variable gesetzt ist in einer Function

    • BugFix
    • 11. Dezember 2008 um 11:20
    Zitat von micneu

    und manchmal ist es eben so das dort werte sein können aber nicht müssen.


    Das Problem stellt sich doch gar nicht, da du einen Standardwert in der INIRead-Funktion übergeben MUSST.

    [autoit]

    $a = IniRead($INI, 'section', 'key', 'STANDARDWERT!!')
    If $a = 'STANDARDWERT!!' Then ; keine Wertübergabe aus INI

    [/autoit]
  • Prüfung ob Variable gesetzt ist in einer Function

    • BugFix
    • 11. Dezember 2008 um 10:54
    Zitat von micneu

    Ich möchte eine Function schreiben die mir prüft ob eine Variable gesetzt ist oder nicht.

    Verwende lieber

    [autoit]

    Opt('MustDeclareVars', 1)

    [/autoit]

    Dann zwingst du dich von Anfang an, deine Variablen sauber zu deklarieren.

    Zitat von micneu

    ist das erste mal das ich objekt orientiert arbeite und ich denke das ist ein guter anfang

    AutoIt ist keine objektorientierte Sprache. Es besteht die Möglichkeit auf vereinzelte Objekte zuzugreifen bzw. bestimmte Objekte zu erstellen, aber die typischen Merkmale von OOP, wie Erstellen eigener Klassen, Vererbung etc. findest du hier nicht.

    Zitat von micneu

    ist $a gesetzt?
    dann mache die und die funktion


    Einfach deine Variablen mit Startwerten vorbelegen.

  • Flash im IE-Objekt deaktivieren?

    • BugFix
    • 11. Dezember 2008 um 10:47

    M.E. ist die Aktivierung/Deaktivierung des Flash-Plugins an deinen Browser gebunden. Dein Embedded-Browser nutzt ja dieselben Einstellungen.
    Somit mußt du schauen, wie du per Hand die Deaktivierung vornehmen würdest und dafür ein Makro/Skript erstellen, dass du dann bei Bedarf aufrufst.

  • DLL-Download Seite / Suche DLL um aus JPG's ein Panoramabild zu machen

    • BugFix
    • 11. Dezember 2008 um 10:40

    Der erste Eintrag im Google-Ergebnis mit Suchbegriff "dll +erstellen +panoramabild" führt sofort zu einer brauchbaren Info (http://freenet-homepage.de/martin_wehner/…l/panorama.html).

    Es gilt wie immer: gidf :whistling:

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™