hmm sry, ich hab's fast für selbstverständlich empfunden, dass man hier mal in der tutorialecke vorbeischaut...
aber passt ja jetzt
Beiträge von K4z
-
-
hö?
Lies dir doch einfach mal das Tutorial von SEuBo durch...
Unter "4.4 Logischer Operator: OR" findest du doch was du brauchst. -
mhh also so klappts dann auch, aber ich musste eigentlich bisher nie das "(?m)" davor setzten...
Spoiler anzeigen
[autoit]$sString = "Schema: XXXXX-SuperUserPool" & @CRLF & _
[/autoit] [autoit][/autoit] [autoit]
"username: XXXXXXXXXX" & @CRLF & _
"Password: YYYYYYYYY" & @CRLF & _
"Valid until: 23/03/2012 22:40:00" & @CRLF$aStringRegEx = StringRegExp($sString, "(?m)(?i)username\: (.+?)$|password\: (.+?)$", 3)
[/autoit]
MsgBox(0, "", "Username: " & $aStringRegEx[0] & @CRLF & "Password: " & $aStringRegEx[2])EDIT: Leider matcht "$" den Carriage return iwie nicht, d.h. das ist dann auch im Ergebnis drinn... Die erste Lösung wäre dann doch besser...
-
hö, also sowas oder wie?
[autoit]$sString = "Schema: XXXXX-SuperUserPool" & @CRLF & _
[/autoit][autoit][/autoit][autoit]
"username: XXXXXXXXXX" & @CRLF & _
"Password: YYYYYYYYY" & @CRLF & _
"Valid until: 23/03/2012 22:40:00" & @CRLF$aStringRegEx = StringRegExp($sString, "(?i)username\: (.+?)[\r\n]|password\: (.+?)[\r\n]", 3)
[/autoit]
MsgBox(0, "", "Username: " & $aStringRegEx[0] & @CRLF & "Password: " & $aStringRegEx[2])(Bei mir geht neuerdings komischerweise das "$" Zeichen nicht mehr, deswegen benützt ich "[\r\n]", ich frag mich nur warum??)
-
Das geht ganz einfach:D
[autoit]
Es gibt nämlich keine Animation, wenn die Progressbar rückwärts läuft, d.h. die Progressbar springt sofort zu dem Wert.
Du musst also einfach zuerst einen höheren Wert wählen und dann den gewünschten Wert.
Is halt mehr oder weniger ein Workaround...#include <GUIConstantsEx.au3>
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
#include <Misc.au3>$hGui = GUICreate("", 400, 100)
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
DllCall("uxtheme.dll", "none", "SetThemeAppProperties", "int", 0)
$hProgress1 = GUICtrlCreateProgress(10, 20, 350, 20)
DllCall("uxtheme.dll", "none", "SetThemeAppProperties", "int", 7)
$hProgress2 = GUICtrlCreateProgress(10, 60, 350, 20)
$hLabel1 = GUICtrlCreateLabel("0%", 365, 22, 35, 20)
$hLabel2 = GUICtrlCreateLabel("0%", 365, 62, 35, 20)
GUISetState()While 1
[/autoit][autoit][/autoit][autoit]
$nMsg = GUIGetMsg()Switch $nMsg
[/autoit]
Case $GUI_EVENT_CLOSE
Exit
Case $GUI_EVENT_PRIMARYDOWN
$aInfo = GUIGetCursorInfo($hGui)
Switch $aInfo[4]
Case $hProgress1
While _IsPressed("01")
$aInfo = GUIGetCursorInfo($hGui)
$aPos = ControlGetPos($hGui, "", $hProgress1)
$iPercent = Int(100 / $aPos[2] * ($aInfo[0] - $aPos[0]))
GUICtrlSetData($hProgress1, $iPercent)
If $iPercent >= 0 And $iPercent <= 100 Then GUICtrlSetData($hLabel1, $iPercent & "%")
WEnd
Case $hProgress2
While _IsPressed("01")
$aInfo = GUIGetCursorInfo($hGui)
$aPos = ControlGetPos($hGui, "", $hProgress2)
$iPercent = Int(100 / $aPos[2] * ($aInfo[0] - $aPos[0]))
GUICtrlSetData($hProgress2, $iPercent+1)
GUICtrlSetData($hProgress2, $iPercent)
If $iPercent >= 0 And $iPercent <= 100 Then GUICtrlSetData($hLabel2, $iPercent & "%")
WEnd
EndSwitch
EndSwitch
WEnd -
Ach wenn jetzt hier jeder seinen Desktop postet, mach ich das auch mal...
[Blockierte Grafik: http://image-upload.de/image/TGhVaj/ed817ff271.jpg] -
Wenn du Photoshop hast, dann zieh dir einfach das Plugin vom gleichen Author und speichers als ein dir passenderes Format ab:D
DTX Plugin Download -
Mhh einfach "\r|\n"?
-
Also das hättest du auch einfach nachschaun können....
Whitespaces: \s
Für nicht-alphanumerische Zeichen einfach \W, oder wenn du noch " " dabei ham willst: [^A-Za-z0-9_ ] -
water: Ja weil dann [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\system.ini] nicht ausgelesen wird... Benenns mal z@u system.ini um...
Dietmar: Schau einfach unter [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping] welche inis das betrifft
-
Das liegt wohl an der Funktion GetPrivateProfileSectionNames (msdn) die AutoIt intern verwendet...
Schau mal unter Remarks. Aber das kann man ja ganz leicht umgehen indem man einfach die Datei umbenennt, wie z.B. System2.ini...mfg k4z
-
2^64 = 2^4*2^60 --> 2^60 ≙ 1 Exbibyte
also 2^4 EiB =16 EiB -
jo hab ich auch grad gemerkt:D:D
-
L3viathan: oder einfach \W, aber er will ja noch " " dauzu ham, also StringRegExpReplace($string, "[^A-Za-z0-9 ]", "")
-
Hättest auch gleich unter Scriptanfragen posten können...
[autoit]#include <Misc.au3>
[/autoit][autoit][/autoit][autoit]Global $iX = 400, $iY = 300
[/autoit]
While 1
If _IsPressed(4 ,'user32.dll') Then
MouseClick("left", $iX, $iY)
Send("^{z 7}")
EndIf
Sleep(100)
wend -
Ist doch schonmal ein Anfang:D
Zitatich weiß noch nicht wie ich mache das man den dateipfad auswählen kann
-->Warum machst du die ganzen Inputs nicht einfach mit GUICtrlCreateInput() auf die Gui?
Wenn das Programm nicht direkt nach der Bearbeitung geschlossen wird, solltest du die Datei wieder mit FileClose() schließen... -
-
Registrier doch einfach ne Funktion für $WM_SIZE und "resize" die Schrift relativ zur Control(Fenster-)größe.
[autoit]
AlsoGUIRegisterMsg($WM_SIZE, "MY_WM_SIZE")
[/autoit]
[autoit]
und dann vielleicht so: (keine Lust jetzt das gescheit zu machen, deswegen wirds natürlich nicht optimal...)Func MY_WM_SIZE($hWnd, $Msg, $wParam, $lParam)
[/autoit]
GUICtrlSetFont($txtSuche, (24/(625+443))*(BitAND($lParam, 0xFFFF)+BitShift($lParam, 16)))
EndFunc -
Also wenn du wirklich nur die Pfeiltasten sperren möchtest, kannst du dir ja mal folgendes anschaun:
Spoiler anzeigen
[autoit]#include <WindowsConstants.au3>
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
#include <WinAPI.au3>OnAutoItExitRegister("__Exit")
[/autoit] [autoit][/autoit] [autoit]Global $pStub_KeyProc = DllCallbackRegister("_KeyProc", "int", "int;ptr;ptr")
[/autoit] [autoit][/autoit] [autoit]
Global $hHookKeyboard = _WinAPI_SetWindowsHookEx($WH_KEYBOARD_LL, DllCallbackGetPtr($pStub_KeyProc), _WinAPI_GetModuleHandle(0), 0)While 1
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
Sleep(10)
WEndFunc _KeyProc($nCode, $wParam, $lParam) ;CALLBACK FUNC
[/autoit] [autoit][/autoit] [autoit]
If $nCode < 0 Then Return _WinAPI_CallNextHookEx($hHookKeyboard, $nCode, $wParam, $lParam)
Local $tKEYHOOKS = DllStructCreate($tagKBDLLHOOKSTRUCT, $lParam)
Local $vkCode = DllStructGetData($tKEYHOOKS, "vkCode")
If $wParam = $WM_KEYDOWN And _BadKey($vkCode) Then
DllCall('user32.dll', 'int', 'keybd_event', 'int', 0x0, 'int', 0, 'int', 0, 'ptr', 0)
Return -1
EndIf
Return _WinAPI_CallNextHookEx($hHookKeyboard, $nCode, $wParam, $lParam)
EndFunc ;==>_KeyProcFunc _BadKey($vkCode)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
If ($vkCode = 0x25) Or ($vkCode = 0x26) Or ($vkCode = 0x27) Or ($vkCode = 0x28) Then
Return True
Else
Return False
EndIf
EndFunc ;==>_BadKeyFunc __Exit()
[/autoit]
DllCallbackFree($pStub_KeyProc)
_WinAPI_UnhookWindowsHookEx($hHookKeyboard)
EndFunc ;==>__Exit
Vielleicht ein bisschen umständlich... -
Probiers doch einfach mal mit WinHTTP. Das Beispiel-Script bissle umändern und du hast schon deine Lösung...
Spoiler anzeigen
[autoit]#include <WinHttp.au3>
[/autoit] [autoit][/autoit] [autoit]Global $hOpen = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2")
[/autoit] [autoit][/autoit] [autoit]
If @error Then
MsgBox(48, "Error", "Error initializing the usage of WinHTTP functions.")
Exit 1
EndIfGlobal $hConnect = _WinHttpConnect($hOpen, "streamplus36.leonex.de", 38034)
[/autoit] [autoit][/autoit] [autoit]
If @error Then
MsgBox(48, "Error", "Error specifying the initial target server of an HTTP request.")
_WinHttpCloseHandle($hOpen)
Exit 2
EndIfGlobal $hRequest = _WinHttpOpenRequest($hConnect)
[/autoit] [autoit][/autoit] [autoit]
If @error Then
MsgBox(48, "Error", "Error creating an HTTP request handle.")
_WinHttpCloseHandle($hConnect)
_WinHttpCloseHandle($hOpen)
Exit 3
EndIf_WinHttpSendRequest($hRequest)
[/autoit] [autoit][/autoit] [autoit]
If @error Then
MsgBox(48, "Error", "Error sending specified request.")
_WinHttpCloseHandle($hRequest)
_WinHttpCloseHandle($hConnect)
_WinHttpCloseHandle($hOpen)
Exit 4
EndIf_WinHttpReceiveResponse($hRequest)
[/autoit] [autoit][/autoit] [autoit]Global $sChunk, $sData
[/autoit] [autoit][/autoit] [autoit]
If _WinHttpQueryDataAvailable($hRequest) Then
; Read
While 1
$sChunk = _WinHttpReadData($hRequest)
If @error Then ExitLoop
$sData &= $sChunk
WEnd
MsgBox(0, "", $sData)
Else
MsgBox(48, "Error", "Site is experiencing problems.")
EndIf; Close handles when they are not needed any more
[/autoit]
_WinHttpCloseHandle($hRequest)
_WinHttpCloseHandle($hConnect)
_WinHttpCloseHandle($hOpen)