各位大大!<br>請問有沒有辦法在程式中下指令,例如 shell "start.........."<br>讓XP燒錄某個資料夾下的檔案到光碟中(在背景中作業),<br>我的目的是讓使用者備份資料到光碟上用的,謝謝各位,感激不盡
http://www.vbqa.com/discuss/vb.old/read.asp?id=28639
謝謝您,不過我跟 http://www.vbqa.com/discuss/vb.old/read.asp?id=28639 提問題的 DUKE 前輩一樣,只是想利用XP內建的燒錄功能,不是寫一個燒錄程式 小弟在 http://www.Planet-Source-Code.com/vb/scripts/ShowCode.asp?txtCodeId=42063&lngWId=1 有下載一個範例,類似燒錄功能的,不過執行起來怪怪的,看不太懂 另外我用GOOGLE有找到一個ActiveX,檔名CDWriterXP16 http://download.pchome.net/utility/cdr/9915.html 還有附2個範例,可在VB中使用,目前正在研究中,有興趣的大大請一起討論..
謝謝您,不過我跟 http://www.vbqa.com/discuss/vb.old/read.asp?id=28639 提問題的 DUKE 前輩一樣,只是想利用XP內建的燒錄功能,不是寫一個燒錄程式 小弟在 http://www.Planet-Source-Code.com/vb/scripts/ShowCode.asp?txtCodeId=42063&lngWId=1 有下載一個範例,類似燒錄功能的,不過執行起來怪怪的,看不太懂 另外我用GOOGLE有找到一個ActiveX,檔名CDWriterXP16 http://download.pchome.net/utility/cdr/9915.html 還有附2個範例,可在VB中使用,目前正在研究中,有興趣的大大請一起討論..
嗯我也在研究這個問題,希望大家一想分享討論,原理好像很簡單,你只要將檔案複製到燒錄器裡(因為在XP裡面燒錄器與光碟機是不一樣的)使用者自然就可以燒錄,但是如果要使用分碟燒錄不同資料的話,好像還是要用其他的方式,因為XP裡的燒錄器一次只能燒一片光碟,燒完取出光碟後才能繼續丟第二片的資料繼續燒錄,無法同時丟兩三片以上的資料分批燒錄。這樣的方式你試試看,另外好像有的燒錄器並不支援XPㄝ,還有一個問題XP的燒錄器有時運作會故障,(明明是燒錄器不過它還是會當成光碟機不讓你丟資料過去),以上的問題與解答僅供參考!
對了你知道XP會將要燒錄的資料存在哪邊嗎? 如下 "C:\Documents and Settings\james\Local Settings\Application Data\Microsoft\CD Burning" 只要將要燒錄的檔案放在這裡然後開啟燒錄機就可以做燒錄了,其中JAMES指的是使用者的登錄名稱這樣不曉得是否能幫助你一些......
至於如何啟動燒錄器開始燒錄的方法我目前也在找,MSDN上好像也沒有,API也沒注意到,所以要解決的問題有兩個 1.如何下指令開始燒錄 2.燒錄完畢回應給程式表示已經燒好,並且送出第二片的資料準備下次的燒錄 如果能找到這兩個機制,就可以完成了這個需求 希望各位先進多提供意見與參考方向 3.如有幸完成,必當分享給各位需求者!!!
網友吉米有到Planet-Source-Code和google搜尋,並將目前找到的資料發表出來,我認為他是一位好的發問者,所以我提供更多的資料 在這篇討論http://www.vbqa.com/discuss/vb.old/read.asp?id=28639所提到的*****是IMAPI(Image Mastering API) msdn的分類在http://msdn.microsoft.com/library/default.asp?url=/library/en-us/devio/base/image_mastering_api.asp 裡面就會提到有哪些API,或是相關的說明,但是沒有完整範例 如果要範例的話就繼續用API名稱當作關鍵字,繼續到google搜尋,我自己是有找到VC++的範例,沒有找到VB的範例 我覺得這些API都需要指標,但VB沒有指標,自己用CopyMemory轉會很麻煩,有興趣的網友可以自行研究如何轉成vb程式碼 用xp內建的功能會比較方便嗎,我個人覺得不會,因為要有COM的基礎,而且一大堆API會搞的頭昏腦脹,不如用現成的元件直接呼叫就好了
謝謝2位前輩的撥控指教 全文搜尋兄您提到的IMAPI,小弟有找過資料: Windows XP 的燒錄系統是由 Roxio 公司提供(即與 Easy Cd Creator 同公司) 應該就是c:\windows\system32\imapi.exe(不知對不對) 我原本把問題想的很簡單,以為在VB中下SHELL的指令再加一些參數就可以做到 沒想到這麼的複雜,真是反而兜遠了! 另外您所提的現成的元件是不是就是 http://yesterday.cdpa.nsysu.edu.tw/cdr/CDWriterXP.exe 或是還有其他的元件? CDWriterXP小弟正在研究中,不過我學VB沒有很久,有點吃力,正在努力中...^^!
現成的元件不限定要哪一種,只要最後能寫出來就好了,CDWriterXP既然有附vb的範例那當然是最方便的
雖然直接使用xp的燒錄光碟功能十分方便...但若使用者停用了內建的燒錄的功能...很可能會發生錯誤
恩CDWriterXP.OCX2的確好用,而且很方便,不過註冊好像要不少錢ㄝ,如果是商用的話可能.....