@M@arc:
Bei dem recht grob skizzierten Sachverhalt ("nehmen wir mal an..") und der Sicherheitsrelevanz dieser Thematik, verbietet sich jede Mausklickerei von vornherein.
Wenn du berechtigten Zugriff auf die Systeme hast, kannst du das Problem mit sauberen Methoden lösen (Ansätze hier gezeigt).
Eine Mausklicklösung wird hierfür nicht supported, da sehe ich viel zu viel Gefährdungspotenzial. Solch Geklicke kann gewaltig nach hinten losgehen und ist als ernsthafte Lösung niemals in Betracht zu ziehen.
Beiträge von BugFix
-
-
Da brauchst du dann verschiedene Formatierung, habe ich z.B. bei _TimerDiffExt so gemacht. Vielleicht hilft dir das als Anregung.
-
Dann zeig doch mal, wie weit du schon "gebissen" hast.
Ohne Code kann man dir nicht helfen. -
Sowas wie BugFix' Tool brauch man eigentlich nicht.

Ich beneide dich um die Fähigkeit, dir alle Farbschattierungen allein anhand der Farbwerte vorstellen zu können. Das ist sicher "Wetten Dass"-reif.
Und der integrierte Farbmixer zeigt detailliert die einzelnen Farbanteile, sofern man es denn wissen möchte.
-
€dit: füge ich statt $return[0] einfach $return ein, dann funktionierts. Strange?!
[autoit]
Hmm, also ich hatte vergessen in diesem Aufruf:$return = DllCall("quricol32.dll", "HANDLE", "GetHBitmap", "str", $_sText, "int", 4, "int", 2)
[/autoit]den Dateinamen mit der Pfadvariablen ($sDllQR) zu ersetzen. Allerdings dürfte das zu keinem Problem führen, da dann der Aufruf ebenfalls im @ScriptDir stattfindet.
[autoit]
Mir ist absolut schleierhaft, dass$hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($return)
[/autoit]funktionieren soll. Wenn $return[0] mit Arrayfehler abbricht bedeutet das, dass der Dll-Aufruf nicht erfolgreich war und demzufolge kannst du an
[autoit]_GDIPlus_BitmapCreateFromHBITMAP
[/autoit]kein Handle übergeben ($return hat nur den Wert 0). Somit muss diese Funktion fehlschlagen. :wacko:
-
kleines Manko, wenn ich ca. 2000 Zeichen reinpacke, verkleinert sich die Gui und kein QR ist zu sehen..
Kann ich leider nicht nachvollziehen. Ich kann exakt 3049 Zeichen codieren, der von dir geschilderte Effekt tritt bei mir erst ab Zeichen 3050 auf.
Verwende mal stückweise kürzere Strings, um festzustellen bei welcher Schwelle es bei dir kippt.
Wie gesagt: bei mir auf Win 7, 64Bit sind 3049 zeichen möglich.p.s. gibt es so was auhc für 128er-BarCode??
Wenn du eine Dll findest, die das umsetzt und auch eine Beschreibung für die Dll hast, kann man das realisieren.
oder auch ein Link ist
Warum? Link wird doch von Redern automatisch erkannt und formatiert.
Ähm, einen Algo kannst du dier hier nicht ansehen, aber in dem Link auf die EN-Forum-Seite findest du auch einen Verweis auf die Dll-Source. Da kannst du dir den Algo ansehen. -
wo finde ich die ganzen Codes für die Farben,
z.B. hier. -
Hi,
im EN-Forum habe ich einen schönen Beitrag zum Erstellen von QR-Code gefunden.
Das Bsp. war mir nur viel zu aufgebläht und nicht zur direkten Texteingabe vorgesehen.
Somit habe ich eine GUI dafür erstellt mit folgenden Optionen:- Auswahl: Kopiere in Zwischenablage
- Auswahl: Speichere Code als BMP und/oder PNG (oder gar nicht)
- Auswahl: Dateiname, Präfix ist immer "QR_", Vorgabe: "JJJJMMTT_hhmmss"
- Auswahl: Speicherordner, Vorgabe: Skriptordner
- Texteingabe im Edit, verbleibende Zeichenzahl wird angezeigt (max. 3049 Zeichen; normalerweise erlaubt QR bis 4296 Zeichen, die verwendete Dll hat hier jedoch limitiert - vermutlich Qualitätslevel)
- bei Restzeichenzahl unter 11 wird das Zählereld gelb hinterlegt, beim Überschreiten der zulässigen Anzahl erfolgt Rotfärbung
- Bei Erstellen des QR-Codes wird die GUI auf die jeweils erforderliche Größe angepasstSo schauts aus:
Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist. Die notwendige Dll habe ich als Binärstring gleich in die au3 mit eingebaut. Sie wird temporär erstellt im Skriptordner und beim Beenden wieder gelöscht.
Hier im Thread-Code habe ich den Binärstring gekürzt.Edit 21.12.2012:
Ich glaube der Fehler ist gefunden: #AutoIt3Wrapper_UseX64=N ist erforderlich. Gleich noch einen kleinen Fehler gefixed: Es wurde immer im @ScriptDir gespeichert (hatte vergessen die Variable dafür zu setzen ;)).QR_Creator.au3
[autoit]
[/autoit] [autoit][/autoit] [autoit]
#AutoIt3Wrapper_UseX64=N#include <Constants.au3>
[/autoit] [autoit][/autoit] [autoit]
#include <WindowsConstants.au3>
#include <GUIConstants.au3>
#include <EditConstants.au3>
#include <GDIPlus.au3>
#include <Clipboard.au3>Opt('GuiOnEventMode', 1)
[/autoit] [autoit][/autoit] [autoit]
OnAutoItExitRegister("_DelBinaryTempFiles")Global Const $__QR_MAX_LEN = 3049 ; == may be that in your system another, low value is possible
[/autoit] [autoit][/autoit] [autoit]Global $sDllQR = @ScriptDir & "\quricol32.dll"
[/autoit] [autoit][/autoit] [autoit]
_CreateDll()Func _CreateDll()
[/autoit] [autoit][/autoit] [autoit]
Local $bData
; String mit den Binärdaten von: quricol32.dll
$bData &= "0x4D5A90000300000004000000FFFF0000B8000000000000004000000000000000000000000000000000000000000000000000000000000000000...." ; gekürzt
$bData &= "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
Local $hFileOut = FileOpen($sDllQR, 2+8+16)
FileWrite($hFileOut, Binary($bData))
FileClose($hFileOut)
EndFuncFunc _DelBinaryTempFiles()
[/autoit] [autoit][/autoit] [autoit]
FileDelete($sDllQR)
EndFuncGlobal $hWnd, $cbClip, $cbBMP, $cbPNG, $cbName, $lbName, $inName, $inPath, $btPath, $editQR, $btRun, $btDel
[/autoit] [autoit][/autoit] [autoit]
Global $iState, $fClip = False, $fBMP = False, $fPNG = True, $sFile, $iH$hWnd = GUICreate("QR Creator", 500, 395)
[/autoit] [autoit][/autoit] [autoit]
$a = WinGetPos($hWnd)
$iH = $a[3]
GUICtrlCreateGroup(' Optionen ', 10, 10, 480, 120)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
$cbClip = GUICtrlCreateCheckbox(' Kopie in Zwischenablage', 30, 35, 150, 20)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUICtrlCreateLabel('Speichern als:', 260, 38, 80, 17)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
$cbBMP = GUICtrlCreateCheckbox(' *.BMP', 350, 35, 50, 20)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
$cbPNG = GUICtrlCreateCheckbox(' *.PNG', 420, 35, 50, 20)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUICtrlSetState(-1, $GUI_CHECKED)
$cbName = GUICtrlCreateCheckbox(' Name Datei', 30, 65, 80, 20)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
$lbName = GUICtrlCreateLabel('QR_', 120, 66, 30, 18, BitOR(0x0002, 0x0200)) ; SS_RIGHT,SS_CENTER
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUICtrlSetBkColor(-1, 0xFEFEFE)
GUICtrlSetState(-1, $GUI_DISABLE)
$inName = GUICtrlCreateInput('JJJJMMDD_hhmmss', 152, 65, 318, 20)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUICtrlSetBkColor(-1, 0xFEFEFE)
GUICtrlSetState(-1, $GUI_DISABLE)
GUICtrlCreateLabel('Ordner', 50, 98, 60, 17)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
$inPath = GUICtrlCreateInput('', 120, 95, 325, 20, $ES_READONLY)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUICtrlSetBkColor(-1, 0xFEFEFE)
GUICtrlSetData(-1, @ScriptDir)
$btPath = GUICtrlCreateButton('...', 450, 95, 20, 20)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlCreateLabel('Zu codierender Text', 10, 143, 120, 17)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUICtrlCreateLabel('Eingabelänge [ max. ' & $__QR_MAX_LEN & ' Zeichen ]:', 240, 143, 185, 17)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
$inCounter = GUICtrlCreateInput($__QR_MAX_LEN, 430, 140, 40, 20, BitOR($ES_READONLY, $ES_CENTER))
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUICtrlSetBkColor(-1, 0xFEFEFE)
$editQR = GUICtrlCreateEdit('', 10, 165, 480, 150, BitOR($ES_WANTRETURN, $ES_MULTILINE, $WS_VSCROLL, $WS_HSCROLL, $ES_AUTOVSCROLL, $ES_AUTOHSCROLL))
GUICtrlSetResizing(-1, $GUI_DOCKALL)
$btRun = GUICtrlCreateButton('Start', 420, 325, 70, 20)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
$btDel = GUICtrlCreateButton('Löschen', 420, 365, 70, 20)
GUICtrlSetResizing(-1, $GUI_DOCKALL)
GUISetOnEvent(-3, '_exit')
GUICtrlSetOnEvent($cbClip, '_event')
GUICtrlSetOnEvent($cbBMP, '_event')
GUICtrlSetOnEvent($cbPNG, '_event')
GUICtrlSetOnEvent($cbName, '_event')
GUICtrlSetOnEvent($btPath, '_event')
GUICtrlSetOnEvent($btRun, '_event')
GUICtrlSetOnEvent($btDel, '_event')GUISetState()
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")While True
[/autoit] [autoit][/autoit] [autoit]
Sleep(50)
WEndFunc _event()
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
Switch @GUI_CtrlId
Case $cbClip
$fClip = Not $fClip
Case $cbBMP
$fBMP = Not $fBMP
Case $cbPNG
$fPNG = Not $fPNG
Case $cbName
Local $iState = $GUI_DISABLE
If BitAND(GUICtrlRead($cbName), $GUI_CHECKED) Then
$iState = $GUI_ENABLE
If (Not $fBMP And Not $fPNG) Then
GUICtrlSetState($cbName, $GUI_UNCHECKED)
Return MsgBox(262160, 'Fehler', 'Bitte erst Dateityp zum Speichern auswählen!')
EndIf
EndIf
GUICtrlSetState($lbName, $iState)
GUICtrlSetState($inName, $iState)
Case $btPath
Local $sPath = FileSelectFolder('Speicherpfad für QR-Image wählen', '', 7)
If $sPath = '' Then Return
GUICtrlSetData($inPath, $sPath)
Case $btRun
$sFile = GUICtrlRead($inName)
If $sFile = "JJJJMMDD_hhmmss" Then $sFile = -1
Local $iFormat = 0
If $fBMP Then $iFormat += 1
If $fPNG Then $iFormat += 2
Local $sContent = GUICtrlRead($editQR)
If StringLen($sContent) > $__QR_MAX_LEN Then Return MsgBox(262160, 'Fehler', 'Der Inhalt überschreitet die maximal zulässige Anzahl an Zeichen!')
_Reset()
createQR($sContent, $fClip, $sFile, $iFormat)
Case $btDel
GUICtrlSetData($editQR, '')
_Reset()
_WinMove()
EndSwitch
If (Not $fBMP) And (Not $fPNG) Then
GUICtrlSetState($btPath, $GUI_DISABLE)
GUICtrlSetState($inPath, $GUI_DISABLE)
Else
GUICtrlSetState($btPath, $GUI_ENABLE)
GUICtrlSetState($inPath, $GUI_ENABLE)
EndIf
EndFunc ;==>_eventFunc _Reset()
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
_WinAPI_RedrawWindow($hWnd)
GUICtrlSetData($inCounter, $__QR_MAX_LEN)
GUICtrlSetColor($inCounter, 0x000000)
GUICtrlSetBkColor($inCounter, 0xFEFEFE)
EndFunc ;==>_ResetFunc _exit()
[/autoit] [autoit][/autoit] [autoit]
Exit
EndFunc ;==>_exitFunc WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]
Local $hWndFrom, $iIDFrom, $iCode, $hWndEdit, $iCount, $iShow, $sFormat = '%04d'
$hWndEdit = GUICtrlGetHandle($editQR)
$hWndFrom = $ilParam
$iIDFrom = BitAND($iwParam, 0xFFFF) ; Low Word
$iCode = BitShift($iwParam, 16) ; Hi Word
Switch $hWndFrom
Case $hWndEdit
Switch $iCode
Case $EN_CHANGE
$iCount = StringLen(GUICtrlRead($editQR))
$iShow = $__QR_MAX_LEN - $iCount
If $iShow < 0 Then
$sFormat = '%+05d'
GUICtrlSetColor($inCounter, 0xFFFFFF)
GUICtrlSetBkColor($inCounter, 0xFF0000)
ElseIf $iShow < 11 Then
GUICtrlSetColor($inCounter, 0x000000)
GUICtrlSetBkColor($inCounter, 0xFFFF00)
Else
GUICtrlSetColor($inCounter, 0x000000)
GUICtrlSetBkColor($inCounter, 0xFEFEFE)
EndIf
GUICtrlSetData($inCounter, StringFormat($sFormat, $iShow))
EndSwitch
EndSwitch
Return $GUI_RUNDEFMSG
EndFunc ;==>WM_COMMAND; =======================================================================================
[/autoit] [autoit][/autoit] [autoit]
; Title .........: QR Creator basierend auf Skript von Giovanni Rossati (El Condor) - http://www.autoitscript.com/forum/topic/14…de/#entry994116
; Description ...: Erstellen von QR-Code, wahlweise Speichern als bmp und/oder png, optional Speichern in Zwischenablage
; Parameters.....: $_sText zu codierender Text
; ......optional.: $_fClipboard Übergabe Image an Zwischenablage, Standard: "True"
; ......optional.: $_sImageName Dateiname, erhält autom. Präfix 'QR_', Standard: "-1" = "QR_JJJJMMDD_hhmmss"
; ......optional.: $_iFormat Speicheroption: 0=nicht Speichern, 1=BMP, 2=PNG (Standard), 3=BMP und PNG
; Author(s) .....: Giovanni Rossati (El Condor)
; ..modified.by..: BugFix
; =======================================================================================
Func createQR($_sText, $_fClipboard = False, $_sImageName = -1, $_iFormat = 2)
Local $return, $hBitmap, $hGraphic, $hBitmap2, $iWidth, $sPath = GUICtrlRead($inPath)
If (Not FileExists($sPath)) And $_iFormat > 0 Then Return MsgBox(262160, 'Fehler', 'Speicherordner existiert nicht!')
Local $iErr = 0, $hDll = DllOpen($sDllQR)
If $_sImageName = -1 Then
$_sImageName = '\QR_' & @YEAR & @MON & @MDAY & '_' & @HOUR & @MIN & @SEC
Else
$_sImageName = '\QR_' & $_sImageName
EndIf
If BitAND($_iFormat, 1) Then DllCall($hDll, "none", "GenerateBMP", "str", $sPath & $_sImageName & ".bmp", "str", $_sText, "int", 4, "int", 2)
If BitAND($_iFormat, 2) Then DllCall($hDll, "none", "GeneratePNG", "str", $sPath & $_sImageName & ".png", "str", $_sText, "int", 4, "int", 2)_GDIPlus_Startup()
[/autoit] [autoit][/autoit] [autoit]
$return = DllCall($hDll, "HANDLE", "GetHBitmap", "str", $_sText, "int", 4, "int", 2)
$iErr = @error
DllClose($hDll)
If Not IsArray($return) Or $iErr <> 0 Then Return MsgBox(262160, 'Fehler', "Der Dll-Aufruf endete mit dem Fehler-Nr: " & $iErr & "!")
$hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($return[0])$iWidth = _GDIPlus_ImageGetWidth($hBitmap)
[/autoit] [autoit][/autoit] [autoit]
If $iWidth > 60 Then _WinMove($iWidth)$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hWnd)
[/autoit] [autoit][/autoit] [autoit]
_GDIPlus_GraphicsDrawImage($hGraphic, $hBitmap, 10, 325)If $_fClipboard Then
[/autoit] [autoit][/autoit] [autoit]
If Not _ClipBoard_Open($hWnd) Then _WinAPI_ShowError("_ClipBoard_Open failed")
If Not _ClipBoard_Empty() Then _WinAPI_ShowError("_ClipBoard_Empty failed")
$hBitmap2 = _WinAPI_CopyImage(_GDIPlus_BitmapCreateHBITMAPFromBitmap($hBitmap), 0, 0, 0, $LR_COPYDELETEORG + $LR_COPYRETURNORG)
_ClipBoard_SetDataEx($hBitmap2, $CF_BITMAP)
_ClipBoard_Close()
EndIf; Clean up resources
[/autoit] [autoit][/autoit] [autoit]
_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_BitmapDispose($hBitmap)
_WinAPI_DeleteObject($return[0])
_GDIPlus_Shutdown() ; Shut down GDI+ library
Return
EndFunc ;==>createQRFunc _WinAPI_CopyImage($hImage, $iType = 0, $xDesired = 0, $yDesired = 0, $iFlags = 0); from _WinAPIEx by Yashied
[/autoit] [autoit][/autoit] [autoit]
Local $Ret = DllCall('user32.dll', 'ptr', 'CopyImage', 'ptr', $hImage, 'int', $iType, 'int', $xDesired, 'int', $yDesired, 'int', $iFlags)
If (@error) Or (Not $Ret[0]) Then Return SetError(1, 0, 0)
Return $Ret[0]
EndFunc ;==>_WinAPI_CopyImageFunc _WinMove($_iDiff = -1)
[/autoit]
Local $iHeight, $aWin = WinGetPos($hWnd)
If $_iDiff = -1 Then
$iHeight = $iH
Else
$iHeight = 305 + $_iDiff + 60
EndIf
WinMove($hWnd, '', $aWin[0], $aWin[1], $aWin[2], $iHeight)
EndFunc ;==>_WinMoveDL bisher: 63
-
Damit das nicht ausufert:
[CLOSED] -
die absoluten Pfad-Verweise auf Handles umzubauen
Häääää? Ich verstehe nur Bahnhof. Was verstehst du denn unter Handle? -
Na ja so sehr hilfreich scheint ihr mir hier wo nicht zu sein man habe nicht die zeit um mich nur darum zu kümmern aber danke dachste es könnte mir mal schnell einer mehr helfen als wie nur mit dieser hilfe.........
Da geht mir doch der Hut hoch! Du hast ja wohl nicht mehr alle Nadeln an der Tanne?
Sollen wir dir den Arm aus der Sonne legen und auch noch den Allerwertesten putzen? Kriegst du überhaupt was gebacken ausser rumzumaulen?
Wir können mit Fug und Recht behaupten, dass unser Forum schnell und qualitativ hochwertig Hilfe bietet - Hilfe zur Selbsthilfe! Du sollst hier was Lernen und nicht andere für dich skripten lassen.
Also ändere mal radikal deine Einstellung oder geh mir in Zukunft gefälligst aus der Sonne!
-
Das macht vor allem bei Dateioperationen Sinn, da man die so übergebenen Dateien einfach im AutoItscript per $CMDLINE[] auswerten kann.
Genau zu diesem Zweck erfolgt der Eintrag: RegWrite($sKey, '', 'REG_SZ', $newProgramPath & " %1")
%1 steht hier für die übergebenen Parameter, sprich die/den markierte(n) Datei(en)/Ordner im Explorer. -
Hier aus einem Skript von mir:
[autoit]
[/autoit]
$sKey = 'HKEY_CLASSES_ROOT\Folder\shell\' & $newProgramName
RegWrite($sKey)
$sKey = 'HKEY_CLASSES_ROOT\Folder\shell\' & $newProgramName & '\command'
RegWrite($sKey)
RegWrite($sKey, '', 'REG_SZ', $newProgramPath & " %1") -
Der einfachste Weg:
- per Hand machen und dabei als Makro aufzeichnen
- den VBA-Code des Makros nach AutoIt portieren
Hilfreich dabei: Word-Objekt-Modell (Table) -
Eventuell meinst du das Anpassen beim Resizen des Fensters?
Du könntest das SIZE-Event auswerten und je nach der neuen Größe des Labels den Font anpassen.
[autoit]
Welchen Platz dein Text mit welchem Font beansprucht, kannst du z.B. vorab in allen Variationen mit dem TextMeter feststellen und dann je nach aktueller Größe den passenden Font wählen.$hGui = GUICreate('Test', 400, 300, -1, -1, BitOR(0x00040000,0x00080000)) ; $WS_SIZEBOX 0x00040000, $WS_SYSMENU 0x00080000
[/autoit][autoit][/autoit][autoit]
$cLabel = GUICtrlCreateLabel('Label', 20, 20)
GUICtrlSetBkColor(-1, 0xfefefe)
GUICtrlSetResizing(-1, 1) ; 1 = $GUI_DOCKAUTO
GUIRegisterMsg(0x0214, '_WM_SIZING')GUISetState()
[/autoit][autoit][/autoit][autoit]Do
[/autoit][autoit][/autoit][autoit]
Until GUIGetMsg() = -3Func _WM_SIZING($hWnd, $Msg, $wParam, $lParam)
[/autoit]
If $hWnd <> $hGui Then Return 'GUI_RUNDEFMSG'
Local $aSize = ControlGetPos($hWnd, '', $cLabel)
Local $iWidth = $aSize[2]
Local $iHeight = $aSize[3]
ConsoleWrite('Label Breite/Höhe: ' & $iWidth & '/' & $iHeight & @CRLF)
Return 'GUI_RUNDEFMSG'
EndFunc -
Die 2-Skript-Variante ist m.M. hier die eleganteste und sinnvollste Lösung.
Wenn du das in einem Skript regeln willst, mußt du deine (zu lange dauernden) Funktionen irgendwie in einem Queue parken und abarbeiten lassen während der Hook-Return bereits erfolgte. Sicher ist das nicht unmöglich, aber vermutlich recht aufwändig.
Wenn du also mit der Arbeitsweise deiner Lösung zufrieden bist, solltest du es ruhig dabei belassen. Es sei denn, es hat jemand tatsächlich eine Variante in petto, die die Problematik auflöst. -
Mit StringFormat:
[autoit]ConsoleWrite('>' & StringFormat("%8s", 'AutoIt') & '<' & @CRLF)
[/autoit]Da die Syntax ja nicht unbedingt selbstverständlich ist, gäbe es auch eine Variante mit anderen String-Funktionen:
[autoit]
[/autoit][autoit][/autoit][autoit]
ConsoleWrite('>' & _PreSpaces('AutoIt',
& '<' & @CRLF)Func _PreSpaces($_sString, $_iLen)
[/autoit]
Local $sSpaces = ''
For $i = 1 To $_iLen -1
$sSpaces &= ' '
Next
Return StringRight($sSpaces & $_sString, $_iLen)
EndFuncEdit: grr, zu lange geschrieben, da war doch wer schneller

-
1. Wenn du Zugriff auf eine Website hast, kannst du deren Inhalte direkt lesen,
sofern
2. Die AGB des Seitenbetreibers ein automatisiertes Lesen nicht untersagen,
womit
3. das Bearbeiten mit OCR (welches in der Mehrzahl der Einsatzfälle gegen unsere Forenregeln verstößt) hinfällig ist.[CLOSED]
-
Wie wäre es, wenn du mal in der Suchfunktion "Kollision" eingibst? Da erhältst du ausreichend Lösungen.
-
Wenn ich mich recht erinnere, haben wir bereits einen User, mit starker Sehschwäche oder gar Erblindung. Ich denke er könnte hier wesentlich mehr einbringen.
Falls sich also jemand erinnert, wie der Name des Users ist - bitte melden.EDIT: Hab ihn gerade gefunden (christopher), aber er hat sich einen Tag angemeldet und war am Folgetag zum letzten mal online, also wohl doch keine Hilfe.

EDIT2: Ha, hab noch jemanden gefunden: gamefighter - und er ist aktiv. Also vielleicht hat er eine Idee. (Habe ihm eine PN gesendet mit Verweis auf diesen Thread)