Interessanter ComSpec ansatz!
Und so einfach kann also die Dekodierung durchgeführt werden... Hatte gestern Abend aus lauter Tatendrang so eine Replacerfunktion erstellt
Beiträge von Techmix
-
-
bobekos: FileMove scheint zu funktionieren!!! SUPER!
Oscar : Das Beispiel "_WinAPI_ShellChangeNotifyRegister" läuft bei mir nicht richtig?!? Es startet zwar, es passiert aber nichts... Oder ich mache es falsch Wie verwende ich diese Funktion richtig??
@All: Ja, ja... Da sieht man mal was dabei rum kommt, wenn man einfach zu kompliziert Denkt. Eine einfache FileMove prüfung hätte mir 3 Tage Kopfzerbrechen erspart
Gelöste Grüsse
-
Hy,
Werde ich später testen! Das mit Openfiles ist zwar eine Möglichkeit ist aber sehr langsamm und ziemlich CPU lastig... -
Ah Ok, also ein einfacher Viewer...
Soll auch das Modell rotierbar sein??Wenn ich auf meiner Platte suche, könnte ich dir sicherlich eine Vorlage zusenden. Sowas habe ich schon zu hauf gemacht Bei interesse PN mich an.
Grüße!
-
@Shadow: Nein, eben nicht...
Hab´s jetzt hinbekommen
[autoit]
[/autoit][autoit][/autoit][autoit]
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_UseX64=n
#RequireAdmin
Global _
$s_User = "Admin", _
$s_Pass = "xxx", _
$hCMD, $sList$hCMD = RunAs($s_User, @ComputerName, $s_Pass, 0, @ComSpec & " /c C:\Windows\System32\openfiles.exe /Query /V", @SystemDir, @SW_HIDE, $STDOUT_CHILD)
[/autoit]
While 1
$sList &= StdoutRead($hCMD)
If @error Then ExitLoop
WEnd
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $sList = ' & $sList & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
Wenn ich nur "openfiles.exe" bei @ComSpec angebe kommt wieder der gleiche Fehler! Auch MUSS der Account ein Passwort haben, ein "" wirft auch Probleme aus. Das "/Query /V" benötige weil ich sonst verkürzte Dateien erhalte.Welche Formatierung/Codierung ist das hier: "E:\Videos\DVB-T\Grey's Anatomy - Die jungen Žrzte20141015-204357.ts" und "INFO: Keine freigegebenen, ge”ffneten Dateien gefunden."??? Jetzt kann ich die zugehörigen Zeilen filtern, aber der Dateiname stimmt durch die Formatierung nicht überein 8? Innerhalb der CMD werden diese Zeichen richtig ausgegeben..
Hab schon hiermit rumgespielt, gibt aber auch nicht die gewünschten Ergebnisse...ASCIIArray Test
[autoit]
[/autoit] [autoit][/autoit] [autoit]
Global _
$sTest, $aTest, _
$i, $j ; ...für die Puristen unter unsfor $i = 0 to 2
[/autoit]
$sTest = "E:\Videos\DVB-T\Grey's Anatomy - Die jungen Žrzte20141015-204357.ts"
$aTest = StringToASCIIArray($sTest, 0, StringLen($sTest), $i)
for $j = 0 to 2
$sTest = StringFromASCIIArray($aTest, 0, UBound($sTest)-1, $j)
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $sTest = ' & $sTest & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
Next
NextGrüsse!
-
Wenn ich versuche über ComSpec openfiles.exe auszuführen, gibt es eine Fehlermeldung. Jedoch funktioniert es über die CMD - seltsamm...
[autoit]#AutoIt3Wrapper_UseUpx=n
[/autoit]
#AutoIt3Wrapper_UseX64=n
#RequireAdmin
$hCMD = Run(@ComSpec & " /c " & 'openfiles.exe', @SystemDir, @SW_HIDE, $STDOUT_CHILD)
While 1
$sList &= StdoutRead($hCMD)
If @error Then ExitLoop
WEnd
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $sList = ' & $sList & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
;~ FEHLER: Auf dem Zielsystem muss ein 32-Bit-Betriebssystem ausgeführt werden.
Auch wenn ich es kompiliere, gibt es eine leere $sList.
Ach, ich verwende Win7 x64 wie man anhand der Fehlermeldung erahnen kann...Grüsse!
P.S:
Da ist noch ein Fehler in der Codeanzeige... -
chip: Jap, alle Optionen...
Openfiles.exe habe ich noch nie gehört... Ich habe ja den Videonamen incl. Pfad, kann ich diesen in der Ausgabe irgendwie Suchen also mit StringInStr oder so?
Werd ich jedenfalls testen! -
Welche Größe angezeigt wird, weiß ich nicht. In meinem Testläufen kommt das gut hin mit der Endgröße, obwohl im Explorer die aktuelle Dateigröße zu sehen ist...
-
Hy,
Habe ich auch versucht. Zeigt selbst im Sekundentakt die gleiche Größe an... -
Hallo Community,
ich schreibe mir gerade ein kleines Tool welches mir den Ausgangspfad meiner DVB-T Software (für Aufzeichnungen) überwacht. Sobald sich eine Videodatei in dem Ornder befindet soll diese überprüft werden, ob momentan in ihr geschrieben wird.
Leider sind alle Versuche welche ich anstellte ins Leere gelaufen... Ich habe es mitversucht, aber alle Funktionen geben mir nicht erfolgreich zurück ob diese gerade erstellt werden - und so werden diese von meinem Script zur Konvertierung erfasst obwohl diese noch garnicht fertig aufgenommen wurden! Das sorgt natürlich für Probleme...
Scriptfunktionen:
1. Überwachung von DVB-T Ordner
2. Erfassung von fertiggestellten Dateien <- Hier liegt das Problem...
3. Videokonvertierung durch Super v2014
4. Sortierung der Aktuellen VideosIch Denke das die Lösung auf dem Fuße liegt, komme aber einfach nicht drauf...
Grüsse!
P.S:
Alles läuft zuverlässig, nur die Erfassung macht probleme! Das Script will ich zu dem Zweck nutzen alle Walking Dead Folgen von RTL2, LIVE, in ein Format welches meine HD-Glotze lesen kann zu konvertieren. -
Hallo,
Leider ist mir nicht ganz klar was genau du mit der .stl Datei vorhast... Sollte diese nur in einer Gui angezeigt werden, kannst du das mit 20 einfachen Zeilen in Irrlicht realisieren. Wenn du z.B. die .stl live verändern möchtest, oder Wissenschaftliches Zeugs wie Physik damit machen willst - wirst du dich nicht davor drücken können deine eigenen Funktionen bzw. Engine schreiben zu müssen!
Aber mit so wenig Infos, lässt sich schlecht eraten was du damit im Detail anstellen willst - Man kann damit so viel machen....Grüsse!
-
Hy,
Sowas wie übergreifende Globale Variablen gibt es leider nicht... Ich denke der beste Weg ist die TCP Kommunikation untereinander, ist auch nicht so kompliziert wie es anfangs erscheint! Und das mit dem Datei lesen/schreiben würde ich gleich verwerfen, gibt nur probleme wenn z.B. die Datei bereits erstellt aber noch nicht fertig geschrieben ist...Grüsse!
-
Herzlichen Glühstrumpf!
-
Moin,
Ich weiß jetzt nicht ob es hilft aber ich musste vor einigen Jahren etwa 5000 Barcodes von Prepaidhandys Scannen und in einer Liste abgleichen. Dafür hatte ich mir auch ein Script gebastelt welches ein Input Feld hat welches ich entweder grün oder rot einfärbte.
Zum Scanner: welches Model das war weiß ich nicht mehr, es ging dabei auch um standart Barcodes und als ich das Scannergehäuse geöffnet hatte waren da einige Dip-Schalter. Mit diesen war es möglich festzulegen wie der Scanner bei durchführung reagieren soll, in meinen Fall sollte er erst Alt, dann den gescannten Code und anschliessend Enter zum PC senden.
Somit konnte ich mein Script bequem darauf einstellen: Bei Alt wurde der Input gecleant und dann Fokussiert, dann kam die Eingabe und mit Enter begann die Auswertung. War eigentlich total simpel und hat sehr viele Arbeitsstunden eingespart.Grüsse!
-
-
Poste mal ein Teil deines Scriptes, zumindest die zusammengehörigen Zeilen welche eben die ImageSearch Funktion beinhaltet!
[autoit]
Weil so ist es schwer zu helfen... Kann sein das du die Pfadangabe für das Such Pic evtl. falsch geschrieben Hast. Beispiel:$Pfad = @Scriptdir & "test.bmp" ; ist falsch
[/autoit]
$Pfad = @Scriptdir & "\test.bmp" ; ist richtig
Ist auch nur eine von vielen Vermutungen... -
Ok, Java ist jetzt natürlich großer Mist...
Dann hat sich mein Vorschlag natürlich erledigt! Ich habe auch schon ein Java Programm automatisiert, hatte aber die 'Push the Button' Udf verwendet. Mit der kam ich zu schnellen Ergebnissen!
Leider bin ich nicht @Home, sonst könnte ich dir sicherlich besser Helfen...Grüsse!
[EDIT]
[autoit]
Versuche das mal so einzubauen:do
[/autoit]
Sleep(100)
Until _WaitForImageSearch("erfolgreichgespeichert.bmp", 5, 0, $k, $l, 0) = 1
[autoit]
anstatt:Sleep(50)
[/autoit]
$image = _imagesearch("erfolgreichgespeichert.bmp", 1, $k, $l, 0)
If $image <> 1 Then
Sleep(200)
$image = _imagesearch("erfolgreichgespeichert.bmp", 1, $k, $l, 0)
EndIf
Musst du eben noch an deine Bedürfnisse anpassen. Sollte das dann noch immer nicht Funktionieren versuche das BMP im 24Bit Format zu speichern, ODER als PNG (weiß nicht ob die DLL das nimmt). Dann sollte es Funktionieren! Ach, und die DLL muß natürlich in @ScriptDir liegen und 'ImageSearchDLL.dll' heißen. -
Hy, kannst du vielleicht ein Screenshot von der GUI welche du etwartest hochladen? Ich denke das die Imagesearch Geschichte völlig überflüssig ist - Ausser die Gui wird von ner Java App erstellt wird! Eigentlich werden Gui's über die WinApi Funktionen erstellt, und solche kann man bequem mit WinExist o.ä. abfragen. Es muss nur der Exakte Gui Titel angegeben werden.
Das in einer Do-Until Schleife mit nem Sleep, und dann sollte es auch ohne Zeitaufwendigen ImageSearch Funltionieren.Grüsse!
-
Du musst das File Handle wieder schliessen, also FileClose($op1) verwenden! Sonst wird es wieder unerwünschte Fehler verursachen... Und überprüfe mal deine ganzen Sleeps, manchmal lässt du eine ganze Minute innerhalb der Schleife warten - wieso frage ich mich...
Grüsse, und viel Glück!
-
Schnitzel, da gebe ich dir völlig recht! Aber im Bezug darauf das der Ersteller hauptsächlich mit anderen Sprachen arbeitet, und ich mehr auf dem Workflow geachtet habe - ist das ein vernünftiger Hinweis!
Er könnte sein Progrämchen produktiv laufen lassen, ohne das vorher noch AU3 Studiert werden muss