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

Beiträge von funkey

  • Der musikalische SEuBo

    • funkey
    • 5. Juli 2010 um 08:17

    Wahnsinnig toll! :thumbup: Einfach nur spitze! Ich hätte auch nichts gegen ein paar mehr Lieder von dir!
    Vielen Dank, dass du uns das gezeigt hast, ich bin echt beeindruckt.

  • Schaltfläche markieren

    • funkey
    • 2. Juli 2010 um 20:21
    [autoit]

    GUICtrlSetState($CtrlID, $GUI_FOCUS)

    [/autoit]
  • Namen gen

    • funkey
    • 2. Juli 2010 um 19:41
    [autoit]

    run ("notepad.exe")
    WinWait("[CLASS:Notepad]")
    WinActivate("[CLASS:Notepad]")
    WinWaitActive("[CLASS:Notepad]")

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

    Send (_GenName())

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

    Func _GenName()
    Local $pers = FileReadLine("name.txt", Random(1,8310,1))
    Local $len = StringLen($pers)
    Return $pers & StringFormat("%00" & 13 - $len & "i", Random(0, 10^(13 - $len) - 1, 1))
    EndFunc

    [/autoit]
  • Windows Design per Script ändern?

    • funkey
    • 1. Juli 2010 um 17:40

    [ offen ] Windows Style

  • Erkennen ob Edit,Label,...

    • funkey
    • 29. Juni 2010 um 18:32

    Ergänzend dazu habe ich auch noch die Funktion '_IsCheckBox' geschrieben, um Buttons und CheckBoxen zu unterscheiden.

    Spoiler anzeigen
    [autoit]

    Func _IsCheckbox($hCtrl)
    ;funkey
    If Not IsHWnd($hCtrl) Then $hCtrl = GUICtrlGetHandle($hCtrl)
    Local $aResult = DllCall("user32.dll", "int", "GetClassNameW", "hwnd", $hCtrl, "wstr", "", "int", 4096)
    If $aResult[2] <> "Button" Then Return 0
    Local $sFuncName = "GetWindowLongW"
    If @AutoItX64 Then $sFuncName = "GetWindowLongPtrW"
    $aResult = DllCall("user32.dll", "long_ptr", $sFuncName, "hwnd", $hCtrl, "int", 0xFFFFFFF0)
    If BitAND($aResult[0], 0x3) = 0x3 Then Return 1
    Return 0
    EndFunc

    [/autoit]
  • StringReplace und dabei zeichen/buchstaben farbig unterlegen?

    • funkey
    • 28. Juni 2010 um 11:39

    Ich weiß nicht, ob ich das richtig verstanden habe.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #Include <GuiRichEdit.au3>

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

    $hGui = GUICreate("Test", 300, 200, 400, 200)
    GUICtrlCreateLabel("Text:", 10, 10, 50, 17)
    ;~ $Input = GUICtrlCreateInput("", 10, 30, 250, 20)
    $Input = _GUICtrlRichEdit_Create($hGui, "", 10, 30, 250, 20)
    GUICtrlCreateLabel("Buchstabe:", 10, 60, 60, 17)
    $Input2 = GUICtrlCreateInput("", 10, 80, 250, 20)
    GUICtrlSetLimit(-1, 1)
    $Button = GUICtrlCreateButton("Ok", 100, 150, 100, 25)

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

    GUISetState(@SW_SHOW)

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

    While 1
    $msg = GUIGetMsg()
    Switch $msg
    Case $GUI_EVENT_CLOSE
    _GUICtrlRichEdit_Destroy($Input)
    Exit
    Case $Button
    $pos = StringInStr(_GUICtrlRichEdit_GetText($Input), GUICtrlRead($Input2))
    _GuiCtrlRichEdit_SetSel($Input, $pos - 1, $pos)
    _GUICtrlRichEdit_SetCharColor($Input, 0xff)
    _GuiCtrlRichEdit_SetSel($Input, $pos - 1, $pos, True)
    EndSwitch
    WEnd

    [/autoit]
  • _WLAN_GetInfo() - WLAN-Infos über 'netsh' auslesen

    • funkey
    • 19. Juni 2010 um 14:08

    Hallo, hab mal wieder eine kleine Funktion geschrieben:

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>

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

    Local $a = _WLAN_GetInfo()
    _ArrayDisplay($a)

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

    Func _WLAN_GetInfo()
    If @OSBuild < 5600 Then Return SetError(1) ;works only on Vista and above
    Local $iPID = Run(@ComSpec & " /c " & "netsh wlan show networks mode=bssid", "", @SW_HIDE, 0x2)
    Local $sLine
    While 1
    $sLine &= StdoutRead($iPID)
    If @error Then ExitLoop
    WEnd
    $sLine = DllCall('user32.dll', 'Int', 'OemToChar', 'str', $sLine, 'str', '')
    $sLine = $sLine[2]
    Local $aTemp, $aTemp2, $aTemp3
    $aTemp = StringSplit($sLine, @CRLF & @CRLF, 1)
    Local $aWiFi[$aTemp[0] - 1][10]
    For $i = 2 To $aTemp[0] - 1
    $aTemp2 = StringSplit($aTemp[$i], @CRLF, 1)
    For $j = 1 To $aTemp2[0]
    $aTemp3 = StringSplit(StringStripWS($aTemp2[$j], 7), " : ", 3)
    $aWiFi[$i - 1][$j - 1] = $aTemp3[1]
    $aWiFi[0][$j - 1] = $aTemp3[0]
    Next
    Next
    $aWiFi[0][0] = "SSID"
    Return $aWiFi
    EndFunc ;==>_WiFi_GetInfo

    [/autoit]

    Könntet Ihr die Funktion bitte auch auf Win7 testen, damit ich weiß, ob sie da auch funktioniert? Vllt auch auf einem englischen System, falls jemand eines hat. Danke.

  • Alina hat Geburtstag ...

    • funkey
    • 19. Juni 2010 um 06:03

    Hallo Lina, Alles Gute!! :party:

  • Ich stell mich mal vor

    • funkey
    • 18. Juni 2010 um 17:05

    Grüezi Storyteller.

  • Paint mit Bild öffnen

    • funkey
    • 18. Juni 2010 um 16:48
    [autoit]

    run ("mspaint.exe " & $pfad)

    [/autoit]


    Ein Leerzeichen nach dem Programmnamen ist wichtig!

  • Alles Gute, L3viathan

    • funkey
    • 18. Juni 2010 um 14:03

    Auch von mir nachträglich noch Happy Birthday!!! :thumbup:

  • Ratatoui grüßt die ganze AutoIt Community ...

    • funkey
    • 18. Juni 2010 um 13:54

    Auch von mir ein herzliches Willkommen hier im AutoIt-Forum.

  • Hilfe zu einer OpenSource DLL um Daten aus einer SIMATIC-SPS auszulesen

    • funkey
    • 17. Juni 2010 um 15:18

    Hallo Leute,
    ich habe im Internet eine DLL-Datei gefunden, mit deren Hilfe ich Daten aus einer Siemens SPS auslesen kann.
    3 Funktionen konnte ich übersetzen, aber bei den wichtigen Funktionen hänge ich. Vielleicht könnte mir ein ein Profi auf dem Gebiet mal unter die Arme greifen?

    Die DLL heißt libnodave.dll

    Bereits funktionierende Funktionen:
    _openSocket
    _closeSocket
    _daveStrerror


    Noch mind. erforderliche Funktionen:
    _daveNewInterface <-- wenn diese Funktion geht, dann dürfte der Rest kein Problem mehr sein. Hier ist das Problem die Struktur, die übergeben weden muss.
    _daveReadSZL <-- Erster Versuch etwas auszulesen


    Ich hoffe es kann mir jemand helfen. Vielen herzlichen Dank im Voraus!!

    Dateien

    S7-LibNoDave.rar 3 MB – 403 Downloads
  • Variable + -

    • funkey
    • 16. Juni 2010 um 18:19
    [autoit]

    MsgBox(0,"", "Zahl: " & $var)

    [/autoit]
  • Variable + -

    • funkey
    • 16. Juni 2010 um 17:00
    Spoiler anzeigen
    [autoit]

    Global $var = InputBox("Zahl eingeben", "Zahl eingeben")
    If Not StringIsInt($var) Or @error Then Exit

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

    HotKeySet("{Esc}", "_Ende")
    HotKeySet("{UP}", "_UP")
    HotKeySet("{DOWN}", "_DOWN")
    HotKeySet("q", "_Show")

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

    While 1
    Sleep(10000)
    WEnd

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

    Func _UP()
    $var += 1
    EndFunc

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

    Func _DOWN()
    $var -= 1
    EndFunc

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

    Func _Show()
    MsgBox(0,"", $var)
    EndFunc

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

    Func _Ende()
    Exit
    EndFunc

    [/autoit]
  • Ist diese Datei eine Win-32-Anwendung (KonsolenAnwendung)

    • funkey
    • 16. Juni 2010 um 06:43

    Hab mal schnell was gebastelt, nur kann ich leider Win32 und Win64 nicht unterscheiden.

    [autoit]

    ConsoleWrite(_IsWin32(@SystemDir & "\cmd.exe") & @CR)
    ConsoleWrite(_IsWin32(@WindowsDir & "\twunk_32.exe") & @CR)
    ConsoleWrite(_IsWin32(@WindowsDir & "\twunk_16.exe") & @CR)

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

    Func _IsWin32($sExePath)
    Local $hFile = FileOpen($sExePath, 0)
    Local $sFile = FileRead($hFile, 117)
    FileClose($hFile)
    $sFile = StringTrimLeft($sFile, 78)
    ;~ ConsoleWrite($sFile & @CR)
    If $sFile = "This program cannot be run in DOS mode." Then Return 1 ;Win32 and Win64
    If $sFile = "This program requires Microsoft Windows" Then Return 0 ;Win16
    EndFunc

    [/autoit]
  • _FormatDisk - Funktion zum Formatieren

    • funkey
    • 15. Juni 2010 um 17:51

    Für einen USB-Stick funktioniert das im einfachsten Falle so:

    Spoiler anzeigen
    [autoit]

    _FormatDisk("f")

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

    Func _FormatDisk($RDrive)
    Local $iPID = Run(@ComSpec & " /k " & "format " & $RDrive & ": /FS:FAT32 /v:" & DriveGetLabel($RDrive & ":\") & " /y", "", @SW_HIDE, 0x2)
    Local $sLine
    ProgressOn("Formatieren", "Laufwerk " & $RDrive & ": wird formatiert", "Bitte warten")
    While 1
    $sLine = StdoutRead($iPID)
    If @error Then ExitLoop
    If StringInStr($sLine, "Prozent") Then
    ProgressSet(StringTrimRight($sLine, 20))
    EndIf
    Wend
    ProgressOff()
    EndFunc

    [/autoit]
  • USB Stick formatieren via cmd

    • funkey
    • 15. Juni 2010 um 16:38

    So geht's bei mir:

    [autoit]

    _FormatDisk("f")

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

    Func _FormatDisk($RDrive)
    Local $RDriveLabel = DriveGetLabel($RDrive & ":\")
    Run(@ComSpec & " /c " & "format " & $RDrive & ": /FS:FAT32 /q /v:" & $RDriveLabel & " /y", "", @SW_HIDE)
    EndFunc

    [/autoit]
  • Labels teilweise unterstreichen: _GuiCtrlCreateLabel_UnderlineWords

    • funkey
    • 12. Juni 2010 um 17:24

    Danke, dass ihr die Funktion für nützlich haltet.
    Einzelne Labels hintereinander zu platzieren kann ja oft ziemlich nerven.

  • Labels teilweise unterstreichen: _GuiCtrlCreateLabel_UnderlineWords

    • funkey
    • 11. Juni 2010 um 15:16

    Hallo,

    hab hier irgendwo gelesen, dass jemand auf einfache Weise Labels erzeugen wollte, die unterstrichene Wörter enthalten. Hier ist mein Lösungsvorschlag:

    Spoiler anzeigen
    [autoit]

    GUICreate('Teilweise unterstrichene Labels', 700, 520)

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

    _GuiCtrlCreateLabel_UnderlineWords("Manche Wörter sind unterstrichen, andere aber nicht!", 10, 10, "3;6", 20)
    _GuiCtrlCreateLabel_UnderlineWords("Manche Wörter sind unterstrichen, andere aber nicht!", 10, 50, "3;6", 10)
    _GuiCtrlCreateLabel_UnderlineWords("Manche Wörter sind unterstrichen, andere aber nicht!", 10, 80, "3;6", 18)

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

    _GuiCtrlCreateLabel_UnderlineWords("Manche Wörter sind unterstrichen, andere aber nicht!", 10, 120, "3;6", 20, "Courier")
    _GuiCtrlCreateLabel_UnderlineWords("Manche Wörter sind unterstrichen, andere aber nicht!", 10, 150, "3;6", 10, "Courier")
    _GuiCtrlCreateLabel_UnderlineWords("Manche Wörter sind unterstrichen, andere aber nicht!", 10, 180, "3;6", 18, "Arial")

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

    $aLabel = _GuiCtrlCreateLabel_UnderlineWords("Text: Link", 10, 220, "1", 80, "Arial")

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

    GUICtrlSetColor($aLabel[1], 0x0000ff)
    GUICtrlSetCursor($aLabel[1], 0)

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

    GUISetState()

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

    Do
    Sleep(10)
    Until GUIGetMsg() = -3

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

    Func _GuiCtrlCreateLabel_UnderlineWords($sText, $iPosX, $iPosY, $sIndex, $iFontSize = 8.5, $sFont = 'Microsoft Sans Serif')
    GUISetFont($iFontSize, 400, 0, $sFont)
    Local $aIndex = StringSplit($sIndex, ";", 2)
    Local $aText = StringSplit(StringStripWS($sText, 7), " ", 2)
    Local $hLabel[UBound($aText)]
    $hLabel[0] = GUICtrlCreateLabel($aText[0], $iPosX, $iPosY)
    Local $hGui = DllCall("user32.dll", "hwnd", "GetParent", "hwnd", GUICtrlGetHandle(-1))
    $hGui = $hGui[0]
    Local $aPos
    For $i = 1 To UBound($aText) -1
    $aPos = ControlGetPos($hGui, "", GUICtrlGetHandle(-1))
    $hLabel[$i] = GUICtrlCreateLabel($aText[$i], $iPosX + $aPos[0] + $aPos[2] - 15 + Ceiling($iFontSize / 3), $iPosY)
    Next
    For $i = 0 To UBound($aIndex) -1
    GUICtrlSetFont($hLabel[$aIndex[$i]], Default, Default, 4)
    Next
    Return $hLabel
    EndFunc

    [/autoit]

    Der Lösungsansatz könnte auch für andere Attribute einer Schriftart verwendet werden, z.B. kursiv schreiben, oder so.
    Hoffe es kann jemand mal brauchen.

    Gruß funkey

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™