Seite 1 von 1

[gelöst] Warum tut RunProgram() nicht mit cdrecord ?

Verfasst: 09.11.2007 19:11
von scholly
moin, moin...

Nachdem alle meine Versuche, den MediumTyp einer DVD von PB aus verläßlich einzulesen erfolglos geblieben sind, wollte ich nun mit Kanonen auf Spatzen schießen und das ganze via cdrecord lösen.

Denkste >_<
Während der Kommandozeilenaufrufcdrecord dev=0,1,0 -minfo alles ausgibt, erhalte ich mit hiermit nur die "About"-Zeile:

Code: Alles auswählen

cdrout = RunProgram("cdrecord.exe", "dev=0,1,0 -minfo", "", #PB_Program_Open|#PB_Program_Read|#PB_Program_Hide)
Output$ = ""
If cdrout  
  While ProgramRunning(cdrout)
    Output$ + ReadProgramString(cdrout) + Chr(13)
  Wend
  Output$ + Chr(13) + Chr(13)
  Output$ + "Exitcode: " + Str(ProgramExitCode(cdrout))     
EndIf
Debug output$
CloseProgram(cdrout)
End
Nun gut, denk ich, hol den Effenberg raus, lenke mit cdrecord dev=0,1,0 -minfo >zinfo.kannweg erfolgreich um und erhalte dann mit der Zeile

Code: Alles auswählen

cdrout = RunProgram("cdrecord.exe", "dev=0,1,0 -minfo >zinfo.kannweg", "", #PB_Program_Open|#PB_Program_Read|#PB_Program_Hide)
noch nicht mal nen Output :o

Das einzige, was ich jeweils finde ist ein File cdrecord.exe.stackdump:

Code: Alles auswählen

Stack trace:
Frame     Function  Args
00229CF8  7C802532  (000007B4, 0000EA60, 000000A4, 00229D40)
00229E18  6109773C  (00000000, 7C8025F0, 7C802532, 000000A4)
00229F08  610952BB  (00000000, 003B0023, 00230000, 00000000)
00229F68  6109579B  (00229F80, 00000000, 00000094, 610A0DA3)
0022A028  61095952  (00000970, 00000006, 0022A058, 61095B52)
0022A038  6109597C  (00000006, 600301DC, 00000001, 00000000)
0022A058  61095B52  (00000002, 0045D601, 00000002, 00000000)
0022A078  00438690  (00441480, 0000002B, 0022A0A8, 610EE09F)
0022A0A8  004385BB  (00441480, 00000000, 0000002B, 61101150)
0022A0D8  0043870C  (61101150, 0022A118, 0000002B, 0022A110)
0022A0F8  00437DAC  (0022A110, 0022A110, 0045D5A0, 0022A244)
0022A228  00437ECC  (61101150, 0045D5A0, 00461450, 00445F40)
0022A288  004379B1  (61101150, 00000000, FFFFFFFF, 00445F40)
0022A2A8  00437969  (FFFFFFFF, 00445F40, 00445A75, 00000001)
0022A2C8  00408941  (00445A75, 0022A498, 004457D4, 0022A49C)
0022A5C8  00407724  (00000004, 006C01A8, 0022A644, 0022A6B0)
End of stack trace (more stack frames may be present)
Was geht denn hier ab ?

ein mehr als nur ein wenig genervter... scholly

Achja: PB 4.10

Verfasst: 09.11.2007 21:06
von bobobo
das liecht wohl am cygwin ,denkichmirmaso

Verfasst: 09.11.2007 21:37
von scholly
Und nu ?
Ohne cygwin1.dll tuts cdrecord nich.

Verfasst: 10.11.2007 08:50
von Captn. Jinguji
Ja, dawird vielleicht die eigentliche info auf stderr ausgegeben ?

Versuch mal
cdrecord dev=0,1,0 -minfo >zinfo.kannweg 2>&1
wird aber erst ab NT aufwärts gehen, also nicht bei W98 ...

Verfasst: 10.11.2007 14:17
von scholly
Captn. Jinguji hat geschrieben:Versuch mal
cdrecord dev=0,1,0 -minfo >zinfo.kannweg 2>&1
wird aber erst ab NT aufwärts gehen, also nicht bei W98 ...
Hier (und da wo der Einsatz geplant) ist XP(SP2), aber ich erhalte erst was, wenn ich das in eine .bat schreibe und die dann aufrufe :o

Ist zwar "von hinten durch die Kniescheibe in den Hinterkopf geschossen" :freak: , aber FMPOV bisher die einzige Möglichkeit, an die korrekte Info zum eingelegten Medium-Typ zu kommen.

danke... scholly