Hallo James1337,
das kann man bestimmt umstricken, aber das ist eine Nummer zu Hoch für mich.
Trotzdem Danke!
Gruß
Homer J. S.
Hallo James1337,
das kann man bestimmt umstricken, aber das ist eine Nummer zu Hoch für mich.
Trotzdem Danke!
Gruß
Homer J. S.
Hallo Zusammen,
ich habe folgendes Problem. Ich möchte gerne eine SD-Card "RAW" ansprechen. Es bsteht kein Filesystem (FAT, FAT32 usw...) auf der Karte.
Ich habe leider überhaupt keine Ahnung wie ich das mit AutoIt bewerkstelligen soll. Die SD-Card bekommt allerdings einen Laufwerk-Buchstaben bei Windows 7.
Hintergrund ist es, eine SD-Card über einen Mikrocontroller zu lesen/schreiben (RAW) und dies wieder über ein eigenes Tool als Datensatz/Datei aufzubereiten.
Ich würde mich über jede Hilfe freuen
Vielen Dank schon mal!
Gruß
Homer J. S.
@kloklo
Ist zwar ein alter Hut, aber ich möchte mich denoch bedanken für deine Lösung. Hat mir heute sehr geholfen
Gruß
Homer J. S.
Hallo Zusammen.
Sorry, für die späte Antwort.
chip
Auf die Idee mit dem PDF hätte ich selber kommen können. Simpel und gut.
Andy
Dein Lösungsansatz finde ich sehr Interessant.
@Der Doc
Das Programm war mir nicht bekannt. Ich denke das wäre die eleganteste Lösung.
@Alle
Ich werde jetzt mal testen was für mich die beste Lösung ist und dann diese Posten.
Vielen Dank für eure schnelle Hilfe!!
Gruß
Homer J. S.
PS: Ich lasse den Post noch als "offen" stehen, bis ich die beste Lösung habe.
Hallo Zusammen.
Also ich habe eine Software die Rechnungen verwaltet.
Für die Kunden möchte ich die Rechungen auf Rechnungspapier drucken.
Für die eigenen Unterlagen möchte ich denselben Druckauftrag dann vollautomatisch noch mal auf Normalpapier drucken.
Ich habe einen Drucker zur Verfügung der zwei Fächer hat.
Mit dem Softwarehersteller der Rechungssoftware habe über mein Vorhaben gesprochen.
Diese teilten mir aber mit, dass es leider nicht möglich wäre diese zu ändern.
In den Treiber-Einstellungen des Druckers kann man dieses auch nicht einstellen.
Dann habe ich die Software Fineprint getestet. Leider war es damit auch nicht möglich mein Vorhaben umzusetzen.
Daher meine Idee das mit AutoIt zu lösen.
Mein Plan sieht wie folgt aus. Die Rechungssoftware schickt den Druckauftrag an einen Virtuellen Drucker, der wiederum den Druckauftrag kopiert und dann an Fach-1 leitet und die Kopie an Fach-2 leitet. Pro Fach steht ein "echter" Drucker unter Windows zu verfügung.
Ich habe im Forum leider dazu nichts Brauchbares gefunden. Mein Ansatz wäre Ghostscript (http://www. ghostscript.com/). Leider fehlen mir die Erfahrungen um so was allein umzusetzen. Ich hoffe ihr könnt mir weiter helfen?!
Vielen Dank schon mal für eure Bemühungen.
Gruß
Homer J. S.
Hallo AutoIT Comunity.
Ich habe mein erstes UDF erstellt. Hoffe ihr könnt es brauchen?!
Beschreibung:
Diese Funktion empfängt und wandelt Daten (Zeit/Datum) eines NTP-Server, schreibt diese in die Systemzeit des Betriebssystems und gibt die
Daten in einem Array aus.
Quellcode-Angaben sind im UDF enthalten!
Gruß
Homer J. S.
PS: Erst die Hilfe durchlesen!!
Hallo Zusammen.
Habe den Beispiel-Code zum Download in der Database bereitgestellt.
-> http://www.autoit.de/index.php?page=DownloadDBData&dataID=17
Gruß
Homer J. S.
Hallo progandy.
Das sieht gut aus.
Ich habe das mal in den vorhanden-Code eingefügt und getestet. Meine ersten Tests bestätigen, das es scheinbar funktioniert
Ein fettes Lob und Dank an dich !!!
Ich habe übrigens bei Kooders.com den IrDecoder2 gefunden
-> http://www.koders.com/python/fid3437…aspx?s=timer#L2
Was ist deine meinung zu dem IrDecoder2? Lohn es sich, den auch noch für AutoIt um zu codieren?
Gruß
Homer J. S.
Hallo progandy.
Mit der Sleep Time ist es besser geworden aber immer noch nicht Perfekt.
Mit dem Code von Kooders.com bin ich nicht zu recht gekommen.
Kannst du mir, auch wenn ich gefahr laufe dich zu nerven, bei dem Code helfen?
Gruß
Homer J. S.
Hallo progandy.
Habe einige Tests mit einer "Sony CD-Player Fernbedienung" gemacht.
Test Play-Taste
In EventGhost bekomme ich folgenden Wert bei drücken der Play-Taste: IgorPlugUSB.SIRC12.08B2
Beim loslassen passiert nichts.
Bei dem AutoIt Code bekomme ich folgende Werte beim drücken der Play-Taste:
(Einmal drücken der Taste liefert erst die erste Zeile beim loslassen die zweite Zeile)
Test 1:
Erste Zeile: 0x1D060806100509050905100510060806100509050905090510
Zweite Zeile: 0x1C0608070E07070707070F060F0608070E070707070707070F
Test 2:
Erste Zeile: 0x1D0509051104090608060F0610050905100509060806080610
Zweite Zeile: 0x1B0707070F06080608070E070E0707070F060806080707070E
Test 3:
Erste Zeile: 0x1D0509060F06080609051005100509060F0608060905090510
Zweite Zeile: 0x1C0608060F07070707070E070F0608060F070707070707070F
Test 4:
Erste Zeile: 0x1D0509051005090608060F0510050905100509060806080610
Zweite Zeile: 0x1D050905100608060806100510050905100608060806090510
Test Pause-Taste
In EventGhost bekomme ich folgenden Wert bei drücken der Pause-Taste: IgorPlugUSB.SIRC12.08B9
Beim loslassen passiert nichts.
Bei dem AutoIt Code bekomme ich folgende Werte beim drücken der Pause-Taste:
(Einmal drücken der Taste liefert erst die erste Zeile beim loslassen die zweite Zeile)
Test 1:
Erste Zeile: 0x1D06100509050905100510060F06090510050905090608060F
Zweite Zeile: 0x1D06100509050905100510060F06090510050905090509060F
Test 2:
Erste Zeile: 0x1D051005090509060F06100510050905100509060806090510
Zweite Zeile: 0x1D051005090509060F06100510050905100608060806080610
Test 3:
Erste Zeile: 0x1D060F06080609051005100510060806100509050905090510
Zweite Zeile: 0x1D060F0609050905100510060F060806100509050905090510
Test 4:
Erste Zeile: 0x1C060F06080707070E070E070F0608060F070707070707070F
Zweite Zeile: 0x1D051005090608060F06100510050905100608060806090510
Wie man bei den Tests sehen kann, bekomme ich immer etwas anderes zurück geliefert
Der aktuelle AuotIt code:
Global Const $IgorUSBDLL = DllOpen("IgorUSB.dll");
Global Const $NO_ERROR= 0;
Local $paramTimeCodeDiagram, $paramDiagramLength
While 1
If _DoGetInfraCode($paramTimeCodeDiagram, $paramDiagramLength) = True And $paramDiagramLength > 0 Then
$ReceivedData = BinaryMid(DllStructGetData($paramTimeCodeDiagram, 1), 1,$paramDiagramLength)
MsgBox(4096, "IR-Empfangen",$ReceivedData)
EndIf
Sleep(10)
WEnd
Func _DoGetInfraCode(ByRef $TimeCodeDiagram, ByRef $DiagramLength)
; Prog@ndy
$TimeCodeDiagram = DllStructCreate("byte[256]")
$pTimeCodeDiagram = DllStructGetPtr($TimeCodeDiagram)
$DiagramLength = 0
Local $aREsult = DllCall($IgorUSBDLL, "int", "DoGetInfraCode", "ptr", $pTimeCodeDiagram, "int", 0, "int*", $DiagramLength)
If @error Then Return SetError(5,@error, False)
$DiagramLength = $aREsult[3]
;MsgBox(4096, "IR-Empfangen",$aREsult[1] & "-" & $aREsult[2] & "-" & $aREsult[3])
Return SetError($aREsult[0], 0, $aREsult[0] = $NO_ERROR)
EndFunc
Im Anhang habe ich das Plugin von EventGhost im txt-Format angehängt.
Hast du (oder ein anderer) noch Ideen wie man das Lösen kann ?
Gruß
Homer J. S.
Hallo progandy.
Habe es nochmal Kopiert und das Komma eingefügt und es antwortet mir
Werde die Codes der FB mal Testen und mich dann nochmal melden.
Vielen dank schonmal für deine Hilfe!!
Gruß
Homer J. S.
Hallo progandy.
Leider immer noch folgende Fehlermeldung:
C:\Dokumente und Einstellungen\...(19) : ==> Incorrect number of parameters in function call.:
$ReceivedData = BinaryMid(DllStructGetData($paramTimeCodeDiagram), 1,$paramDiagramLength)
$ReceivedData = BinaryMid(^ ERROR
Gruß
Homer J. S.
Hallo progandy.
Habe deinen Aufruf verwendet. Die If-Abfrage habe ich angepasst, da diese einen Fehler aufgewiesen hat.
Nach einem neuen Test kam dann folgende Fehlerausgabe in der Console wenn ich einen IR-Code mir der FB geschickt habe:
C:\Dokumente und Einstellungen\... : ==> Incorrect number of parameters in function call.:
$ReceivedData = BinaryMid(DllStructGetData($paramTimeCodeDiagram),1 $paramDiagramLength)
$ReceivedData = BinaryMid(^ ERROR
Hier ist der aktuelle Code:
Global Const $IgorUSBDLL = DllOpen("IgorUSB.dll");
;~ //return values from IgorUSBDLL functions:
Global Const $NO_ERROR= 0;
Global Const $DEVICE_NOT_PRESENT = 1;
Global Const $NO_DATA_AVAILABLE = 2;
Global Const $INVALID_BAUDRATE = 3;
Global Const $OVERRUN_ERROR = 4;
Global Const $DLLCALL_ERROR = 5;
Global $tempi = 0
;While 1
;Call("_DoGetInfraCode", 83, 256)
;WEnd
Local $paramTimeCodeDiagram, $paramDiagramLength
While 1
If _DoGetInfraCode($paramTimeCodeDiagram, $paramDiagramLength) = $NO_ERROR And $paramDiagramLength > 0 Then
$ReceivedData = BinaryMid(DllStructGetData($paramTimeCodeDiagram),1 $paramDiagramLength)
MsgBox(4096, "Test", $ReceivedData)
EndIf
Sleep(10)
WEnd
Func _DoGetInfraCode(ByRef $TimeCodeDiagram, ByRef $DiagramLength)
; Prog@ndy
$TimeCodeDiagram = DllStructCreate("byte[256]")
$pTimeCodeDiagram = DllStructGetPtr($TimeCodeDiagram)
$DiagramLength = 0
Local $aREsult = DllCall($IgorUSBDLL, "int", "DoGetInfraCode", "ptr", $pTimeCodeDiagram, "int", 0, "int*", $DiagramLength)
If @error Then Return SetError(5,@error, False)
$DiagramLength = $aREsult[3]
MsgBox(4096, "Test 2", $aREsult[0] & " " & $aREsult[1] & " " & $aREsult[2] & " " & $aREsult[3])
EndFunc
Was habe ich falsch gemacht?
Danke für deine Bemühungen!
Gruß
Homer J. S.
Hallo progandy.
Habe gestern dein Code getestet mit einem Teilerfolg.
Hier ist mein Testcode:
Global Const $IgorUSBDLL = DllOpen("IgorUSB.dll");
;~ //return values from IgorUSBDLL functions:
Global Const $NO_ERROR= 0;
Global Const $DEVICE_NOT_PRESENT = 1;
Global Const $NO_DATA_AVAILABLE = 2;
Global Const $INVALID_BAUDRATE = 3;
Global Const $OVERRUN_ERROR = 4;
Global Const $DLLCALL_ERROR = 5;
While 1
Call("_DoGetInfraCode", 83, 256)
WEnd
Func _DoGetInfraCode(ByRef $TimeCodeDiagram, ByRef $DiagramLength)
; Prog@ndy
$TimeCodeDiagram = DllStructCreate("byte[256]")
$pTimeCodeDiagram = DllStructGetPtr($TimeCodeDiagram)
$DiagramLength = 0
Local $aREsult = DllCall($IgorUSBDLL, "int", "DoGetInfraCode", "ptr", $pTimeCodeDiagram, "int", 0, "int*", $DiagramLength)
If @error Then Return SetError(5,@error, False)
$DiagramLength = $aREsult[3]
;Return SetError($aREsult[0], 0, $aREsult[0] = $NO_ERROR)
MsgBox(4096, "Test", $aREsult[0] & " " & $aREsult[1] & " " & $aREsult[2] & " " & $aREsult[3])
EndFunc
#cs
int __stdcall DoGetInDataPort(uchar * DataInByte);
int __stdcall DoEEPROMRead(uchar Address, uchar * DataInByte);
int __stdcall DoEEPROMWrite(uchar Address, uchar DataOutByte);
int __stdcall DoRS232Send(uchar DataOutByte);
int __stdcall DoRS232Read(uchar * DataInByte);
int __stdcall DoSetRS232Baud(int BaudRate);
int __stdcall DoGetRS232Baud(int * BaudRate);
#ce
Folgende Ergebnisse habe ich bekommen:
Wenn das Gerät nicht angeschlossen ist:
$aREsult[0] = 1
$aREsult[1] = 0x013C1058
$aREsult[2] = 0
$aREsult[3] = 0
Wenn das Gerät angeschlossen ist:
$aREsult[0] = 0
$aREsult[1] = 0x013C1058
$aREsult[2] = 0
$aREsult[3] = 0
Wenn das Gerät angeschlossen ist und dann irgend eine Taste von der Fernbedienung gedrückt wurde:
$aREsult[0] = 0
$aREsult[1] = 0x013C1058
$aREsult[2] = 0
$aREsult[3] = 23
Der Teilerfolg zeigt, das dein Code mir einen vorherigen Tastendruck der Fernbedienung anzeigt
Leider zeigt mir der Code, egal bei was für einem Tastendruck der Fernbedienung , immer nur im $aREsult[3] die 23 an
Wenn ich die "23" abgerufen habe und dann denn Code erneut ausführe, dann zeigt mir $aREsult[3] die 0 wieder an.
Ich habe unterschiedliche Variablentypen und werte getestet mit dem Ergebniss, das sich dann zwar $aREsult[1] ändert aber bei
einem Tastendruck kommt wieder die 23 bei $aREsult[3].
Den Empfänger habe ich mit EventGhost getestet um diesen als Fehlerquelle auszuschliessen. Der Test war erfolgreich und somit funktioniert
der Empänger einwandfrei.
Das antwortet EventGhost:
IgorPlugUSB.Unknown.15F5DDD (Taste Volume +)
IgorPlugUSB.Unknown.17F5DDD (Taste Volume -)
Hast du eine Idee was das sein bzw. wie man das lösen könnte?
Vielen dank schonmal für deine Hilfe.
Gruß
Homer J. S.
Vielen Dank für deine schnelle Hilfe progandy.
Werde das heute Abend mal testen und über den Erfolg oder Misserfolg berichten!
Gruß
Homer J. S.
Hallo Zusammen.
Erst einmal muss ich mein Lob aussprechen für das Geniale Programm
Nun komme ich aber leider an meine Grenzen. Daher hoffe ich das ihr mir helfen könnt.
Ich möchte gerne meinen USB-IR Empfänger (für Fernbedienungen) über AutoIt auswerten. Der Empfänger ist ein Bausatz der mit dem IgorPlug arbeitet. In der Doku. (im Anhang) von Igor kann man entnehmen wie man mit der DLL kommuniziert. Ich bekomme es leider nicht hin. Könnt ihr mir bitte ein kleines Code-Beispiel geben?
Vielen dank für eure Unterstützung.
Gruß
Homer J. S.