Danke dir, werde wohl doch zu alt für so etwas. ![]()
Beiträge von oh-ha
-
-
Schick, nur bei mir kommt ein Error, wenn ich die linke oder aber rechte Maustaste drücke.
Oder habe ich da was falsch verstanden?
>"C:\Program Files (x86)\AutoIt3\SciTE\..\AutoIt3.exe" /ErrorStdOut "C:\Users\oh_ha\Downloads\ColorTable(4).au3"
>Exit code: 1
Autoit Version v3.3.16.0
-
-
Hast du dir schon mal den Code angesehen, wenn du eine WebP Datei im Editor aufmachst?
Normal steht da für Bilder
RIFFâ( WEBPVP8
RIFF®B WEBPVP8
RIFF–+ WEBPVP8
in der ersten oder in der ersten und zweiten Zeile
Wenn du eine Animierte WebP anschaust hast du
RIFF"ã WEBPVP8X
RIFF̧ WEBPVP8X
RIFFüž WEBPVP8X
auch wiederum in der ersten oder ersten und zweiten Zeile
Der Unterschied wäre dann nur das X am Ende für Animierte.
Sehr selten kommt es wohl auch vor, dass man eine *.webp als Bilddatei hat, wo auch ein X dabeisteht, habe aber noch keine animierte *.webp Datei gefunden, wo das X fehlte.
Vielleicht kannst du ja damit etwas anfangen.
-
Wow,
bei mir macht es das ohne murren.
Windows 11 64 bit und Autoit v3.3.14.5
-
Würde es dir was bringen das Bild vorher zu konvertieren in eine *.png? Könnte man damit machen: https://developers.google.com/speed/webp/docs/using
-
Und was hindert dich daran, die Ausgabe der Batch in eine Textdatei umzuleiten, um dir da die Variable herzuholen?
Um bei dem Beispiel von Schnuffel zu bleiben:
-
Hast du es schon mal mit "RunWait" probiert, wie BugFix in Post2 geschrieben hatte?
Das Problem der adb.exe war, soweit ich mich noch erinnere, dass nach der Funktion der Prozess immer geschlossen werden musste und sich nicht selber nach dem CMD Aufruf schloss.
Über die ADB hatte ich das immer so gemacht
zB.
AutoIt
Alles anzeigenFunc Apps();==Sichere Apps $Pfad = @ScriptDir & '\Backup\backup.ab' $CMD1 = 'cd ' & @ScriptDir & '\Data &&' & _ 'adb.exe backup -apk -noshared -nosystem -f ' & $Pfad & ' > search.find 2>&1' RunWait('"' & @ComSpec & '" /c ' & $CMD1, @SystemDir, @SW_HIDE) Local $pid = ProcessExists("adb.exe") If $pid > 1 Then ProcessClose($pid) EndIf EndFunc;==Apps Func Geraete_Speicher_und_SD();==Sichere Geraete Speicher und SD-Karten Inhalt $Pfad = @ScriptDir & '\Backup\backup.ab' $CMD1 = 'cd ' & @ScriptDir & '\Data &&' & _ 'adb.exe backup -noapk -shared -nosystem -f ' & $Pfad & ' > search.find 2>&1' RunWait('"' & @ComSpec & '" /c ' & $CMD1, @SystemDir, @SW_HIDE) Local $pid = ProcessExists("adb.exe") If $pid > 1 Then ProcessClose($pid) EndIf EndFunc;==Geraete_Speicher_und_SDDas, was du dir über die ADB laden möchtest, in eine Funktion setzen und das ganze dann über AutoIt aufrufen.
-
Dafür nehme ich Soda PDF, extrahiere das PDF Formular als *.xfdf und diese kann man dann beliebig bearbeiten und wieder als *.pdf zusammenführen.
So mache ich es mit einem Bestellschein, den ich über ein Autoit Programm ausfüllen lasse.
Gibt auch einige andere Möglichkeiten aus einem PDF Formular eine *.xfdf zu extrahieren.
So schaut der Aufbau einer *.xfdf Datei aus.
XML
Alles anzeigen<?xml version="1.0" encoding="UTF-8" ?> <xfdf xmlns="http://ns.adobe.com/xfdf/" xml:space="preserve"> <fields> <field name="Vorname"> <value>Peter</value> </field> <field name="Nachname"> <value>Mueller</value> </field> <field name="Anrede"> <value>Herr</value> </field> <field name="Nummer"> <value>21</value> </field> </fields> <f href="" /> </xfdf> -
Mache das mit Foxit PDF Reader. Da sollte alles gehen und ist kostet nichts.
-
Danke dir Oscar
Habe die neueste Version von Autoit. Den Include Ordner aber noch von einer älteren Version.
Wusste doch das mich das mal einholen wird dieses hin und her switchen.
-
@Musashi
Bekomme diese Fehlermeldung:
Code>"C:\Program Files (x86)\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "C:\Users\mein\Desktop\Neuer Ordner\555555.au3" "C:\Users\mein\Desktop\Neuer Ordner\_DownloadWithProgress.au3" (258) : ==> Variable used without being declared.: $hLineBrush = DllCall($__g_hGDIPDll, 'uint', 'GdipCreateLineBrush', 'struct*', $tPoint1, 'struct*', $tPoint2, 'uint', 0xB0FFFFFF, 'uint', 0x00FFFFFF, 'int', 0, 'int*', 0) $hLineBrush = DllCall(^ ERROR >Exit code: 1 Time: 0.478Wenn ich die Variable im Skript als Global deklariere, kommt das:
Code"C:\Program Files (x86)\AutoIt3\SciTE\..\autoit3.exe" /ErrorStdOut "C:\Users\mein\Desktop\Neuer Ordner\Example.au3" "C:\Users\mein\Desktop\Neuer Ordner\_DownloadWithProgress.au3" (259) : ==> Subscript used on non-accessible variable.: $hLineBrush = $hLineBrush[6] $hLineBrush = $hLineBrush^ ERROR >Exit code: 1 Time: 0.477Ändere ich die Zeile
$hLineBrush = $hLineBrush[6] in $hLineBrush = $hLineBrush in der UDF
Dann ist da wohl ein Wert zu viel in deinem Skript
_DownloadWithProgress($sDownloadURL, $sDownloadDir, 1031, 'Download', -1, -1, 0, 1) zu _DownloadWithProgress($sDownloadURL, $sDownloadDir, 1031, 'Download', -1, -1, 0)
Keine Ahnung, ob es nur bei mir so ist.
Das Skript oben in Post 4 ist nicht von mir, ist das Beispiel aus der Hilfe, da kilo in Post 1 geschrieben hat, --> "Ich benutze normalerweise die Standard "InetGet" Funktion wie in der Hilfefunktion" <-- hatte ich auch das Beispiel Skript genommen.
Ist bei mir aber auch nicht die erste wahl für den download

-
Kann es sein das du am Ende des Beispiels das "FileDelete($sFilePath)" nicht gelöscht hast oder aber nicht auskommentiert hast?
Sollte so aussehen:
C
Alles anzeigen#include <InetConstants.au3> #include <MsgBoxConstants.au3> #include <WinAPIFiles.au3> ; Download einer Datei im Hintergrund. ; Wartet bis der Download vollständig ist. Example() Func Example() ; Speichert die heruntergeladene Datei in den temporären Ordner. Local $sFilePath = _WinAPI_GetTempFileName(@ScriptDir);-------------> Hier habe ich noch den Pfad wo die Datei hin geladen wird geändert. ; Lädt die Datei im Hintergrund mit den ausgewählten Optionen von 'Erzwingt ein erneutes Laden von der Remote-Seite' herunter. Local $hDownload = InetGet("https://bits.avcdn.net/productfamily_ANTIVIRUS/insttype_FREE/platform_WIN/installertype_FULL/build_RELEASE/cookie_mmm_ava_998_999_000_m", $sFilePath, $INET_FORCERELOAD, $INET_DOWNLOADBACKGROUND) ; Wartet bis der Download komplett ist. Dabei wird solange gewartet, bis der zweite Wert von InetGetInfo True zurückgibt. Do Sleep(250) Until InetGetInfo($hDownload, $INET_DOWNLOADCOMPLETE) ; Ermittelt die übertragenen Bytes und die Dateigröße. Local $iBytesSize = InetGetInfo($hDownload, $INET_DOWNLOADREAD) Local $iFileSize = FileGetSize($sFilePath) ; Schließt das durch InetGet zurückgegebene Handle. InetClose($hDownload) ; Zeigt Details über die gelesenen Bytes und die Dateigröße. MsgBox($MB_SYSTEMMODAL, "", "heruntergeladene Bytes: " & $iBytesSize & @CRLF & _ "gesamte Dateigröße: " & $iFileSize) ; Löscht die Datei. ;FileDelete($sFilePath) EndFunc ;==>ExampleDie Datei noch umbenennen und gut ist.
-
Abgerufen wird die Datei mit diesem Link:
bits.avcdn.net/productfamily_ANTIVIRUS/insttype_FREE/platform_WIN/installertype_FULL/build_RELEASE/cookie_mmm_ava_998_999_000_mHabe mal "https://" entfernt, um den Link zu entschärfen.
-
Lade dir diese Datei runter: Deutsche Hilfe
Entpacke die *.rar Datei
Darin findest du auch eine Hilfe Datei was wo hinkommt.
Dann das ganze auf Deutsch umstellen:
BeitragRE: SciTE umstellen auf deutsch
Die Datei im Anhang mit den Namen "locale.properties" nach "C:\Program Files (x86)\AutoIt3\SciTE" kopieren. Würde ich aber an deiner Stelle nicht machen da die meisten mit der englischen Version arbeiten und es so bei Scitespezifischen Fragen die du haben könntest zu Verständigungsproblemen kommen kann.chip20. Dezember 2012 um 10:29 oder
-
Das könnte das gesuchte sein.
oder nur die Abfrage. Post 3 von misterspeed
BeitragRE: Status der Netzwerkverbindung abfragen.
Hab da was im englischen Forum gefunden und etwas abgeändert...
(Versteckter Text)
misterspeed17. August 2011 um 00:06 -
Wenn ich den HTML Text so runterlade ist er schon falsch formatiert.
Eventuell hilft dir ja der Umweg über eine Textdatei.
C
Alles anzeigen#Region ;************ Includes ************ #include <Array.au3> #include <String.au3> #include <Inet.au3> $sSource = _INetGetSource("https://www.dfb.de/bundesliga/spieltagtabelle/?spieledb_path=/competitions/12/seasons/17683/matchday/3&spieledb_path=%2Fmatches%2F2315390") $dBinary = StringToBinary($sSource,1) FileWrite('my_2.txt', $dBinary) $sFilePath = 'my_2.txt' $hFile = FileOpen($sFilePath) $sSource = FileRead($hFile) FileClose($hFile) $aTest = _StringBetween($sSource, 'historize_url="> ', '</a>') _ArrayDisplay($aTest)Da hast du dann zumindest den Text so vorliegen wie er auf der Seite angezeigt wird.
Edit: Code angepasst
-
Hatte das mal so gelöst.
Spoiler anzeigen
Code
Alles anzeigen#Region ;************ Includes ************ #Include <String.au3> #Include <Array.au3> #Include <Inet.au3> #EndRegion ;************ Includes ************ $sSource = _INetGetSource("https://www.dfb.de/bundesliga/spieltagtabelle/?spieledb_path=/competitions/12/seasons/17683/matchday/3&spieledb_path=%2Fmatches%2F2315390") $aTest = _StringBetween($sSource, 'historize_url="> ', '</a><br>') Local $a_2 = StringToASCIIArray($aTest[0]) Local $s_2= StringFromASCIIArray($a_2,0,-1,2) ConsoleWrite($aTest[0] & @CRLF) ConsoleWrite($s_2 & @CRLF) -
Moin,
selbst wenn die *.ini vom Kollegen gelöscht verschoben wurde, wird es bei Programmstart geprüft.
Wird auch in einem Fenster der Gui angezeigt an wen da gesendet wird, kann man halt nur nicht ändern außer in der Ini.
Sollte keine *.ini vorhanden sein wird eine minimal ini geschrieben die zumindest sicherstellt, dass die Mail an die Bestell Adresse gesendet wird.
Du hast aber insoweit recht das, dass Programm so reagiert als, wenn keine Ini vorhanden wäre, allein erklären kann ich es mir nicht.
Zumal es auf mehreren Rechnern passiert ist.
-
So habe herausgefunden, woran der hängenbleibt.
Das mit den Varianten testen war der richtige Wegweiser, danke dir water
Tausche ich diese beiden Zeilen aus
Global $sCurrentUser = IniRead($programmini, "Mail", "user", "")
zu
Global $sCurrentUser = $oOutlook.GetNameSpace("MAPI").CurrentUser.Name
sendet er.
Das warum ist mir allerdings noch ein Rätsel. Muss das ganze jetzt noch auf den Firmenrechnern Testen.