hi,
so die erste Version ist nun soweit das ich sie freigeben kann.
- NeroCOM.JPG (34.43 KiB) 1956 mal betrachtet
es hat sich ergeben das man alle Property vor dem "brennen" setzten muss sodas dass Thema erstmal [erledigt] ist
zur Demo : ich habe es auf 1 Verzeichniss "only" bislang ausgelegt und es wird noch nicht getestet ob die "Menge" auf das Medium ( CD-R/W ) "passt" ...
Das Zip besteht aus dem EXE und einer DLL.
Bei Interesse und eurer Mithilfe könnte ich versuchen daraus eine "universelle" LIB zu schreiben,
also sagt mir was "fehlt" oder wo was nicht "so" funktioniert wie es "sollte".
Code: Alles auswählen
#include "Common.ch"
#include "Xbp.ch"
#include "Appevent.ch"
#include "Nero.ch" // Nero Event Konstanten
#include "NeroEv.ch" // meine Konstanten
MEMVAR zPath,ID_USER,ID_VERSION // für meine ErrorSys
PROCEDURE AppSys
Return
PROCEDURE LL13MODULEEXIT // LL13 Dummy for Errorsys
Return
PROCEDURE Main
LOCAL nEvent, oXbp, mp1, mp2
LOCAL oAppNero
LOCAL lExit := .F.
LOCAL aSize := {600,400}
LOCAL aPos := CenterPos( aSize, AppDeskTop():currentsize() )
LOCAL cAlaska := Getenv("XPPROOT")
// für meine ErrorSys
PUBLIC zPath := LEFT(AppName(.T.),LEN(AppName(.T.))-LEN(AppName(.F.)))
PUBLIC ID_USER := "Testi"
PUBLIC ID_VERSION := "0.01"
IF EMPTY(cAlaska)
Msgbox("Xbase++ SET XPPROOT= not set !!!"+CRLF+;
"using USERPROFILE instead"+CRLF+;
CRLF+;
"WARNING : may exceed Disk Volume !!!")
ENDIF
SET EPOCH TO YEAR( DATE() ) - 50
SET DATE GERMAN
oAppNero := NeroBurn():New(AppDeskTop(),,aPos,aSize)
oAppNero:title := "Xbase++ NeroCOM"
oAppNero:Icon := 1
oAppNero:drawingArea:resize := {| aOldSize, aNewSize, oSelf | MainReSize(aOldSize, aNewSize, oSelf) }
oAppNero:close := {|| lExit := .T. }
oAppNero:Create()
// Hardware "testen"
oAppNero:TestMEDIA()
// DynamicCast Events aktivieren
oAppNero:DefEvent()
SetAppWindow(oAppNero)
// Combobox "Brenner" Auswahl
oAppNero:oComboBurn:ItemSelected := {|| oAppNero:DriveInfo() }
SetAppFocus(oAppNero:oComboBurn)
nEvent := xbe_None
DO WHILE !lExit
nEvent := AppEvent ( @mp1, @mp2, @oXbp )
DO CASE
CASE nEvent == xbeP_Quit
EXIT
OTHERWISE
oXbp:HandleEvent ( nEvent, mp1, mp2 )
ENDCASE
ENDDO
oAppNero:UnDriveEvent()
oAppNero:UnDefEvent()
oAppNero:oNero := NIL
oAppNero:destroy()
RETURN
editiert : "lates" Version für Nero v6.x und v7.x