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
    • 17. Dezember 2008 um 20:08
    Zitat von bernd670


    Was für eine IE-Version läuft den auf dem Server?


    Ich glaube, ich habe inzwischen IE 6 aufgespielt, bin mir aber nicht ganz sicher. Da der Server ausschließlich im Intranet läuft, ist die Konfiguration der Internetkomponenten absolut nebensächlich.

  • IS-Net Checker

    • BugFix
    • 17. Dezember 2008 um 15:33

    Habs jetzt noch nicht getestet, aber mal ein Tipp:
    Du kannst deine Case-Abfrage zum Speed vereinfachen.

    [autoit]

    ; statt:
    Case $in > 1023 And $in< 1048575

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

    ; reicht völlig:
    Case $in< 1048575
    ; denn falls $in < 1024, wird ja schon der Code im vorhergehenden
    ; Case-Zweig (Case $in < 1024) ausgeführt
    ; dasselbe bei $out

    [/autoit]
  • IS-Net Checker

    • BugFix
    • 17. Dezember 2008 um 09:56

    Hi,
    da du noch neu bei uns bist, ein Hinweis: Exe-Dateien wird sich wohl kaum jemand herunterladen. Oder führst du einfach so fremde exe aus? 8|
    Und der Sinn dieses Forums liegt u.a. darin, die Lösungswege aufzuzeigen - sein Skript also in der Source zu posten.

  • dll load geht nicht

    • BugFix
    • 16. Dezember 2008 um 23:34
    Zitat

    Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long

    Zitat

    fWinIni Erwartet "0" für keine Aktion oder eine der "fWinIni"-Konstanten, die den Vorgang beschreiben.

    Ich vermute, da liegt der Hund begraben - du übergibst 0 ==> keine Aktion.

    Edit: Ich glaube, dass wars wohl doch nicht, die fWinIni-Parameter sind absolut uninteressant.

    Zitat

    Const SPIF_SENDWININICHANGE = &H2 'Benachrichtet alle TopLevel Fenster über die Änderung und der Änderung in der Win.ini
    Const SPIF_UPDATEINIFILE = &H1 'Speichert die Änderung der Win.ini, ändernungen werden sind so nach einem Neustart immer noch wirksam

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

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™