neroFiddlesCOMForm.frm 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315
  1. VERSION 5.00
  2. Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
  3. Object = "{6B7E6392-850A-101B-AFC0-4210102A8DA7}#1.3#0"; "comctl32.ocx"
  4. Begin VB.Form neroFiddlesCOMForm
  5. Caption = "NeroFiddles COM"
  6. ClientHeight = 6150
  7. ClientLeft = 60
  8. ClientTop = 345
  9. ClientWidth = 6930
  10. LinkTopic = "Form1"
  11. ScaleHeight = 6150
  12. ScaleWidth = 6930
  13. StartUpPosition = 3 'Windows Default
  14. Begin MSComDlg.CommonDialog ImageFileDialog
  15. Left = 1680
  16. Top = 4800
  17. _ExtentX = 688
  18. _ExtentY = 688
  19. _Version = 393216
  20. DefaultExt = "nrg"
  21. DialogTitle = "Select Image File "
  22. Filter = "All Files (*.*)|*.*|Nero Image Files (*.nrg)|*.nrg"
  23. End
  24. Begin VB.Frame Frame4
  25. Caption = "Available Devices"
  26. Height = 735
  27. Left = 120
  28. TabIndex = 10
  29. Top = 960
  30. Width = 6495
  31. Begin VB.ComboBox AvailableDevices
  32. Height = 315
  33. ItemData = "neroFiddlesCOMForm.frx":0000
  34. Left = 240
  35. List = "neroFiddlesCOMForm.frx":0002
  36. TabIndex = 11
  37. Top = 240
  38. Width = 5895
  39. End
  40. End
  41. Begin VB.Frame Frame3
  42. Caption = "Progress"
  43. Height = 735
  44. Left = 120
  45. TabIndex = 5
  46. Top = 1800
  47. Width = 6495
  48. Begin ComctlLib.ProgressBar ProgressBar
  49. Height = 375
  50. Left = 240
  51. TabIndex = 6
  52. Top = 240
  53. Width = 5895
  54. _ExtentX = 10398
  55. _ExtentY = 661
  56. _Version = 327682
  57. Appearance = 1
  58. End
  59. End
  60. Begin MSComDlg.CommonDialog SelectFileDialog
  61. Left = 1080
  62. Top = 4800
  63. _ExtentX = 847
  64. _ExtentY = 847
  65. _Version = 393216
  66. DefaultExt = "mp3"
  67. DialogTitle = "Select File For Burning"
  68. Filter = "All Files (*.*)|*.*|MP3 Files (*.mp3)|*.mp3"
  69. End
  70. Begin VB.TextBox edtMessages
  71. Height = 2055
  72. Left = 360
  73. MultiLine = -1 'True
  74. ScrollBars = 3 'Both
  75. TabIndex = 0
  76. Top = 3840
  77. Width = 5895
  78. End
  79. Begin VB.Frame Frame2
  80. Caption = "Nero Messages"
  81. Height = 2535
  82. Left = 120
  83. TabIndex = 1
  84. Top = 3480
  85. Width = 6495
  86. End
  87. Begin VB.Frame Frame1
  88. Caption = "File Name"
  89. Height = 735
  90. Index = 1
  91. Left = 120
  92. TabIndex = 2
  93. Top = 120
  94. Width = 6495
  95. Begin VB.CommandButton Browse
  96. Caption = "Browse"
  97. Height = 375
  98. Left = 4680
  99. TabIndex = 9
  100. Top = 240
  101. Width = 1455
  102. End
  103. Begin VB.TextBox edtFileName
  104. Height = 375
  105. Left = 240
  106. Locked = -1 'True
  107. ScrollBars = 1 'Horizontal
  108. TabIndex = 4
  109. Top = 240
  110. Width = 4215
  111. End
  112. End
  113. Begin VB.Frame Frame1
  114. Caption = "Burn Control"
  115. Height = 735
  116. Index = 2
  117. Left = 120
  118. TabIndex = 3
  119. Top = 2640
  120. Width = 6495
  121. Begin VB.CommandButton Burn
  122. Caption = "Burn"
  123. Enabled = 0 'False
  124. Height = 375
  125. Left = 240
  126. TabIndex = 8
  127. Top = 240
  128. Width = 4215
  129. End
  130. Begin VB.CommandButton btnAbort
  131. Caption = "Abort"
  132. Enabled = 0 'False
  133. Height = 375
  134. Left = 4680
  135. TabIndex = 7
  136. Top = 240
  137. Width = 1455
  138. End
  139. End
  140. Begin MSComDlg.CommonDialog CommonDialog1
  141. Left = 2400
  142. Top = 4200
  143. _ExtentX = 847
  144. _ExtentY = 847
  145. _Version = 393216
  146. DefaultExt = "mp3"
  147. Filter = "All Files (*.*)|*.*|MP3 Files (*.mp3)|*.mp3"
  148. End
  149. End
  150. Attribute VB_Name = "neroFiddlesCOMForm"
  151. Attribute VB_GlobalNameSpace = False
  152. Attribute VB_Creatable = False
  153. Attribute VB_PredeclaredId = True
  154. Attribute VB_Exposed = False
  155. Public WithEvents nero As nero
  156. Attribute nero.VB_VarHelpID = -1
  157. Public drives As INeroDrives
  158. Attribute drives.VB_VarHelpID = -1
  159. Public WithEvents drive As NeroDrive
  160. Attribute drive.VB_VarHelpID = -1
  161. Public cnt As Integer
  162. Public Folder As INeroFolder
  163. Public strMessages As String
  164. Function NameFromPath(strPath As String) As String
  165. Dim lngPos As Long
  166. Dim strPart As String
  167. Dim blnIncludesFile As Boolean
  168. lngPos = InStrRev(strPath, "\")
  169. blnIncludesFile = InStrRev(strPath, ".") > lngPos
  170. strPart = ""
  171. If lngPos > 0 Then
  172. If blnIncludesFile Then
  173. strPart = Right$(strPath, Len(strPath) - lngPos)
  174. End If
  175. End If
  176. NameFromPath = strPart
  177. End Function
  178. Private Sub Browse_Click()
  179. SelectFileDialog.CancelError = True
  180. On Error GoTo ErrHandler
  181. SelectFileDialog.Flags = cdlOFNHideReadOnly
  182. SelectFileDialog.FilterIndex = 2
  183. SelectFileDialog.ShowOpen
  184. edtFileName.Text = SelectFileDialog.FileName
  185. Burn.Enabled = True
  186. Exit Sub
  187. ErrHandler:
  188. Exit Sub
  189. End Sub
  190. Private Sub btnAbort_Click()
  191. nero.Abort
  192. End Sub
  193. Private Sub Burn_Click()
  194. btnAbort.Enabled = True
  195. Browse.Enabled = False
  196. Burn.Enabled = False
  197. Set Folder = New NeroFolder
  198. Dim drives As INeroDrives
  199. Set drives = nero.GetDrives(NERO_MEDIA_CDR)
  200. Set drive = drives(AvailableDevices.ListIndex)
  201. Dim isotrack As NeroISOTrack
  202. Set isotrack = New NeroISOTrack
  203. isotrack.Name = "TestTrack"
  204. isotrack.RootFolder = Folder
  205. Dim file As NeroFile
  206. Set file = New NeroFile
  207. Folder.Files.Add file
  208. file.Name = NameFromPath(edtFileName.Text)
  209. file.SourceFilePath = edtFileName.Text
  210. isotrack.BurnOptions = NERO_BURN_OPTION_CREATE_ISO_FS + NERO_BURN_OPTION_USE_JOLIET
  211. drive.BurnIsoAudioCD "Pop Star", "Title", 0, isotrack, Nothing, Nothing, NERO_BURN_FLAG_SIMULATE + NERO_BURN_FLAG_WRITE, 4, NERO_MEDIA_CD
  212. GoTo quit
  213. handle_error:
  214. strMessages = strMessages + Err.Description + Chr(13) + Chr(10) + nero.LastError
  215. edtMessages = strMessages
  216. quit:
  217. End Sub
  218. Private Sub drive_OnAborted(Abort As Boolean)
  219. Abort = False
  220. End Sub
  221. Private Sub drive_OnAddLogLine(TextType As NEROLib.NERO_TEXT_TYPE, Text As String)
  222. strMessages = strMessages + Text + Chr(13) + Chr(10)
  223. edtMessages = strMessages
  224. End Sub
  225. Private Sub drive_OnDoneBurn(StatusCode As NEROLib.NERO_BURN_ERROR)
  226. strMessages = strMessages + Chr(13) + Chr(10) + nero.ErrorLog + Chr(13) + Chr(10)
  227. strMessages = strMessages + nero.LastError + Chr(13) + Chr(10)
  228. strMessages = strMessages + "Burn finished "
  229. If StatusCode <> NEROLib.NERO_BURN_OK Then
  230. strMessages = strMessages + "NOT (" & StatusCode & ")"
  231. End If
  232. strMessages = strMessages + "successfully!" + Chr(13) + Chr(10)
  233. edtMessages = strMessages
  234. btnAbort.Enabled = False
  235. Browse.Enabled = True
  236. Burn.Enabled = True
  237. ProgressBar.Value = 0
  238. End Sub
  239. Private Sub drive_OnDoneWaitForMedia(Success As Boolean)
  240. strMessages = strMessages + "Done waiting for media." + Chr(13) + Chr(10)
  241. edtMessages = strMessages
  242. End Sub
  243. Private Sub drive_OnProgress(ProgressInPercent As Long, Abort As Boolean)
  244. Abort = False
  245. ProgressBar.Value = ProgressInPercent
  246. End Sub
  247. Private Sub drive_OnSetPhase(Text As String)
  248. strMessages = strMessages + Text + Chr(13) + Chr(10)
  249. edtMessages = strMessages
  250. End Sub
  251. Private Sub Form_Initialize()
  252. Set nero = New nero
  253. ProgressBar.Value = 0
  254. strMessages = ""
  255. Dim drives As INeroDrives
  256. Set drives = nero.GetDrives(NERO_MEDIA_CDR)
  257. For myIndex = 0 To drives.Count - 1
  258. AvailableDevices.AddItem drives(myIndex).DeviceName, myIndex
  259. Next
  260. AvailableDevices.ListIndex = 0
  261. ErrHandler:
  262. Exit Sub
  263. End Sub
  264. Private Sub nero_OnFileSelImage(FileName As String)
  265. ImageFileDialog.CancelError = True
  266. On Error GoTo ErrHandler
  267. ImageFileDialog.Flags = cdlOFNHideReadOnly
  268. ImageFileDialog.FilterIndex = 2
  269. ImageFileDialog.ShowOpen
  270. FileName = ImageFileDialog.FileName
  271. Exit Sub
  272. ErrHandler:
  273. Exit Sub
  274. End Sub
  275. Private Sub nero_OnMegaFatal()
  276. strMessages = strMessages + "A mega fatal error has occurred." + Chr(13) + Chr(10)
  277. edtMessages = strMessages
  278. End Sub
  279. Private Sub nero_OnNonEmptyCDRW(Response As NEROLib.NERO_RESPONSE)
  280. strMessages = strMessages + "CD-RW not empty!" + Chr(13) + Chr(10)
  281. edtMessages = strMessages
  282. Response = NERO_RETURN_EXIT
  283. End Sub
  284. Private Sub nero_OnRestart()
  285. strMessages = strMessages + "The system is being restarted." + Chr(13) + Chr(10)
  286. edtMessages = strMessages
  287. End Sub
  288. Private Sub nero_OnWaitCD(WaitCD As NEROLib.NERO_WAITCD_TYPE, WaitCDLocalizedText As String)
  289. strMessages = strMessages + WaitCDLocalizedText + Chr(13) + Chr(10)
  290. edtMessages = strMessages
  291. End Sub
  292. Private Sub nero_OnWaitCDDone()
  293. strMessages = strMessages + "Done waiting for CD." + Chr(13) + Chr(10)
  294. edtMessages = strMessages
  295. End Sub
  296. Private Sub nero_OnWaitCDMediaInfo(LastDetectedMedia As NEROLib.NERO_MEDIA_TYPE, LastDetectedMediaName As String, RequestedMedia As NEROLib.NERO_MEDIA_TYPE, RequestedMediaName As String)
  297. strMessages = strMessages + "Waiting for a particular media type:" + Chr(13) + Chr(10)
  298. strMessages = strMessages + RequestedMediaName + Chr(13) + Chr(10)
  299. edtMessages = strMessages
  300. End Sub
  301. Private Sub nero_OnWaitCDReminder()
  302. strMessages = strMessages + "Still waiting for CD..." + Chr(13) + Chr(10)
  303. edtMessages = strMessages
  304. End Sub