-.-" ohje.. danke dir vielmals..
Beiträge von SgtIgram
-
-
Moinsen,
es mag daran liegen das ich mal wieder die nacht durchgemacht habe aber ich bekomms net hin =(.. für jemand mit routine sicher kein problem!
ich habe in meinem textblock abschnitte wie diesen hier:
...("???| Foobar: ???")...
Die strings die ich suche sind werden durch die fragezeichen dargestellt.. haben eine beliebige länge und beinhalten normale buchstaben&zahlen... die punkte stehen für beliebige textbereiche die mich nicht interessieren
ich möchte also sowohl das zwischen (" und | haben.. als auch das zwischen Foobar: und ")
und das bei jedem vorkommen.. sprich.. solch ein abschnitt kann aber muss nicht... öfter vorkommen
ich und meine kopfschmerzen danken im vorraus
mfg
sgtigram
-
-
Haiho!
Ich hatte vor kurzem damit angefangen ein wenig mit dem einbinden von Flash-Objekten rumzuspielen.
Meldungen die mir das Flashobjekt entgegenwirft kann ich wunderbar abfangen und funktioniert alles top.
Auch das setzen von root-variablen funzt mithilfe von beispielsweise:
Jetzt hab ich aber das Problem das ich eine Variable die mit .watch() beobachtet wird, bzw. nen Callback dranhängt wenn es eine Änderung gibt, ändern muss die innerhalb einer Klasse definiert wird.
und innerhalb vom clientCom dann
Code: Flash Actionscriptvar _loc1_ = this; _loc1_.callFlashFunction = ""; _loc1_.watch("callFlashFunction",_loc1_.receiveCommand);
so.. wie setze ich nun mithilfe von .SetVariable "client.callFlashFunction"? ich habs mit wild drauflos raten versucht wie z.b.:
AutoIt$oRP.SetVariable("/:client.callFlashFunction", "foobar") // oder // $oRP.SetVariable("/:client:callFlashFunction", "foobar")
ich bin ratlos...
vielen Dank bereits im Vorraus und ich hoffe mir kann jemand weiterhelfen!
mfg
- sgtigram
-
Aloha!
Schon ne weile her aber da ich AutoIt mal wieder ausgekramt habe
Folgendes:
Ich möchte eine Bilddatei(Jpg) per POST-Data an ein PHP-Skript übergeben... so weit so gut.. das ganze klappt auch.. nur scheiterts daran das Ganze auf der anderen Seite beim zurückschreiben in eine Datei.
...das blöde Dateiformat...
hatte ein bissel rumgesucht und dachte da an die PHP-Funktion "pack()"... allerdings brauch ich dafür wohl irgendeine art von Info wie Autoit den String codiert hat oder so??
Hochladen tu ich das ganze über die HTTP-UDF und 2 Zusatzfunktionen die ich mir wo per Google rausgefischt hab.
hatte schon versucht daran ein wenig rumzuspielen... ohne erfolg offenbar...
Spoiler anzeigen
AutoIt
Alles anzeigenFunc _HTTPPost_File($host, $page, $socket = -1, $file = "", $fieldname = "") Dim $command Local $extra_commands If $socket == -1 Then If $_HTTPLastSocket == -1 Then SetError(1) Return EndIf $socket = $_HTTPLastSocket EndIf Local $contenttype = _HTTPPost_contenttype($file) ; Maybe this can be done easier/better? Local $boundary = "------"&Chr(Random(Asc("A"), Asc("Z"), 3))&Chr(Random(Asc("a"), Asc("z"), 3))&Chr(Random(Asc("A"), Asc("Z"), 3))&Chr(Random(Asc("a"), Asc("z"), 3))&Random(1, 9, 1)&Random(1, 9, 1)&Random(1, 9, 1) ;If $contenttype = "text/plain" Then Local $fileopen = FileOpen($file, 16); Open in read only mode Local $fileread = FileRead($fileopen) FileClose($fileopen) $file = "screenshot.jpg" $extra_commands = "--"&$boundary&@CRLF $extra_commands &= "Content-Disposition: form-data; name="""&$fieldname&"""; filename=""" & $file & """" &@CRLF $extra_commands &= "Content-Type: "&$contenttype&@CRLF&@CRLF $extra_commands &= $fileread&@CRLF $extra_commands &= "--"&$boundary&"--" ;EndIf Dim $datasize = StringLen($extra_commands) $command = "POST "&$page&" HTTP/1.1"&@CRLF $command &= "Host: " &$host&@CRLF $command &= "User-Agent: "&$_HTTPUserAgent&@CRLF ;$command &= "Connection: close"&@CRLF $command &= "Content-Type: multipart/form-data; boundary="&$boundary&@CRLF $command &= "Content-Length: "&$datasize&@CRLF&@CRLF $command &= $extra_commands ;debug info If FileExists("output.txt") Then FileDelete("output.txt") $file = FileOpen("output.txt", 1) FileWrite($file, $command) FileClose($file) ;end debug info Dim $bytessent = TCPSend($socket, $command) If $bytessent == 0 Then SetExtended(@error) SetError(2) return 0 EndIf SetError(0) Return $bytessent EndFunc Func _HTTPPost_contenttype($file = "") Local $fileextension = StringRight($file,4) Local $contenttype Switch $fileextension Case "html" $contenttype = "text/html" Case ".htm" $contenttype = "text/html" Case ".jpg" $contenttype = "image/jpeg" Case "jpeg" $contenttype = "image/jpeg" Case ".png" $contenttype = "image/png" Case ".txt" $contenttype = "text/plain" Case Else $contenttype = "application/octet-stream" EndSwitch Return $contenttype EndFunc
der eine oder andere vermutet vielleicht? das in der Datei auf dem Server dann nur etwas wie folgendes in der Datei als Text steht:
0xFFD8FFE000104A46494600010101006000600000FFDB004300080606070605080707070909080A0C140D0C0B.....
rauskommen soll natürlich eigentlich der gute alte zusammengematschte "Maschinencode"... also eine Bilddatei die ich mir einfach ansehen kann..
ich hoffe das ich hier damit richtig bin da ich an der Quelle der Bilddatei ansetzen wollte und in nem PHP-Forum mit AutoIt vlt. niemand was anfangen kann...
FTP ist in diesem zusammenhang übrigends leider keine Alternative für mich
grüße
- sgtigram
-
howdy
der trick ist halt einfach das du den Server das Passwort nicht anzeigen lässt zum überprüfen sondern du schickst es dem Server und wenn es dem Server gefällt schickt er eine art session-id die dein Programm dann für eventuelle anfragen nutzen kann
du kannst natürlich auch wie James schon geschrieben hat mit dem user-Agent arbeiten.. aber ich würd dir empfehlen das zusätzlich zu machen und nicht ausschließlich damit zu arbeiten.. das hätte dann die Sicherheitsstufe von nem gameboymfg
sgtigram -
möp,
Zitatsleep brauche ich, damit Peter nur 1x und nicht 40x aufgerufen wird, wenn ich kurz a drücke
da empfehle ich dir es anders zu lösen da du das ganze script damit ja pausierst...
du könntest mit timerinit() und timerdiff() arbeiten... je nach anwendungssituation.. weiß ja nicht was dein script genau tut
-
howdy
[autoit]
[/autoit]
Func _Hans($bInput)
Switch $bInput
Case 0x41
_Peter("a")
Case 0x42
_Peter("b")
Case 0x43
_Peter("c")
EndSwitch
sleep(100) ;brauchst du dieses sleep tatsächlich?
EndFuncich denke mal das dein code wirklich nur ein beispiel war..
oder funktioniert das in deinem fall nicht? -
im fehlen ganz einfach die basics zu autoit... er achtet nicht darauf was die hinweise von scite zu bedeuten haben, er setzt zeichen falsch wo es nur geht...
er will etwas basteln.. aber beschäftigt sich damit garnicht richtig
-
howdy
glaub auch das du dir vorher was eingefangen haben musst..
kompilierte programme können aber auch öfter mal fehl-alarme auslösen.. besonders scherzhaft find ich die meldung bei nem kollegen immer via avast "das programm ist sehr neu oder gibt es nicht sehr oft" oder sowas in dem dreh^^..auch von kaspersky hatte ich mal nen fehlalarm.. allerdings hab ich denen dann eine mail geschickt per website mit dem programm als anhang und dann war wieder alles paletti
-
howdy
wenn du öfter mit mehreren guis arbeitest solltest du dir auch mal die funktion guiswitch() anschauen und bei der einen oder anderen funktion vlt. den optionalen parameter(standart ist die letzte gui) für ein gui-handle übergeben
mfg
sgtigram -
hab aktuell leider nur 1 monitor angeschlossen.. kann dir also diesbezüglich grade nich weiterhelfen^^
-
howdy
habe dein problem so gelöst..
[autoit]#include <ScreenCapture.au3>
[/autoit][autoit][/autoit][autoit]
#include <Array.au3>
#include <WinAPI.au3>
#include <Gdiplus.au3>
Global $aRes = _GetGlobalResolution()
Global $ich_bin_ein_toller_screenshot = _ScreenCapture_Capture("",$aRes[0],$aRes[1],$aRes[2],$aRes[3])
_picture($ich_bin_ein_toller_screenshot)
_WinAPI_DeleteObject($ich_bin_ein_toller_screenshot)Func _picture($input)
[/autoit][autoit][/autoit][autoit]
_GDIPlus_Startup()
$himg = _GDIPlus_BitmapCreateFromHBITMAP($input)
$hGraphics = _GDIPlus_ImageGetGraphicsContext($himg)
_GDIPlus_GraphicsDrawImage($hGraphics, $himg, 0, 0)
_GDIPlus_ImageSaveToFile($himg, "klein.jpg")
_GDIPlus_ImageDispose($himg)
_GDIPlus_Shutdown()EndFunc
[/autoit][autoit][/autoit][autoit]Func _GetGlobalResolution()
[/autoit]
Local $aRes[4], $hWindow, $stRET
$hWindow = _WinAPI_GetDesktopWindow()
$stRET = _WinAPI_GetWindowPlacement($hWindow)
If Not @error Then
$aRes[0] = DllStructGetData($stRET, 'rcNormalPosition', 1) ; left
$aRes[1] = DllStructGetData($stRET, 'rcNormalPosition', 2) ; top
$aRes[2] = DllStructGetData($stRET, 'rcNormalPosition', 3) ; right
$aRes[3] = DllStructGetData($stRET, 'rcNormalPosition', 4) ; bottom
Return $aRes
Else
Return SetError(1, 0, 0)
EndIf
EndFunc//EDIT: upsi.. das auslesen der auflösung sollte ich natürlich wieder anmachen
mfg
sgtigram -
Aber wenn er da ist, dann ist er ganz sicher kein Danke-Button sondern zum Teilen von Inhalten. Das ist etwas grundverschiedenes.
das heißt ein "teilen" button ist offiziell in ordnung?
//EDIT: und.. es ist ein button zum öffentlichen empfehlen auf google.. und da das board das von sich aus zu unterstützen zu scheint wäre es ja nicht verkehrt einen eigenen "empfehlen" button zu machen.. oder sehe ich das falsch??
-
nicht das board hat entschieden...
nur einige wenige die meinten für alle anderen sprechen zu müssen..
es ist ein öffentliches forum das uns zur verfügung gestellt wird und keine privatsite...oder .. jetzt wirds lächerlich..
wird dir unterstellt das du öffentlich im netz waffen verherrlichst weil du eine schießende waffe in deiner signatur hast? ebenso kann dein QR code als link angeschesehen werdenmfg
sgtigram -
howdy
je nachdem worum es sich handelt stelle ich auch gern kostenlos ein paar dyndns subdomains zur verfügung falls jemand interesse hat
einfach PN an mich
mfg
sgtigram -
ach das sind alles synonyme für
-zählerstand checken und zum tüv schicken
-ölwechsel
-sommerreifen runter -
howdy
spontan würd ich raten das noch ein filehandle offen ist vom schreiben...
funktioniert denn das drucken mit autoit mit einer vorher preperierten textdatei? also ohne das die datei von autoit erstellt wurdemfg
sgtigram -
davon war doch auch garnicht die rede -.-...
er hat es zuvor verwendet... und schneller gemacht ist meine variante.. vorallem auch anfänger-freundlicher -
aber nicht schneller zu machen^^...
wenn die verbindung sowieso hergestellt ist, isses natürlich schneller gemacht, und das ergebnis kommt schneller...da er aber mit _IECreate arbeitet gehe ich davon aus das er einfach nur eine unkomplizierte schnell-gemachte lösung sucht