ShellExecute與WinExec執行的問題 |
尚未結案
|
chengwei
一般會員 發表:18 回覆:9 積分:5 註冊:2005-04-04 發送簡訊給我 |
我在使用ShellExecute或WinExec執行外部指令時,在使用OpenPictureDialog開啟圖形即不會成功執行外部指令,也沒有出現錯誤訊息,只有在程式一開始以imag物件設定picture的圖形才能由ShellExecute或WinExec執行外部指令成功
程式碼如下,可有解決的方法?
SrcImage->Picture->SaveToFile("D:\\progressiveJPEG\\tmpimage.bmp"); ShellExecute(Handle,"open","D:\\progressiveJPEG\\cjpeg.exe","-progressive tmpimage.bmp progimage.jpeg",NULL,SW_HIDE); \\WinExec("D:\\progressiveJPEG\\cjpeg.exe -progressive tmpimage.bmp progimage.jpeg",SW_SHOWMAXIMIZED); |
RedSnow
版主 發表:79 回覆:1322 積分:845 註冊:2003-12-15 發送簡訊給我 |
chengwei 您好: 由您貼上來的程式碼並無法看出與 "使用OpenPictureDialog開啟圖形" 動作的關連性為何? 如果您已經確認其它的動作沒有問題,問題就僅出在您貼上來的這兩行敘述,那麼您可能需要先確定 SrcImage->Picture 的內容是否已經經過設定?如果沒有的話,那個 SaveToFile() 的動作並不會產生您要的檔案,因此後續與該檔案有關的動作自然就不能正常運作了,況且您在執行 ShellExecute() 時設定的參數是 SW_HIDE,這將使您看不到被呼叫程式執行時產生的相關訊息 (例如:File not found)。 發表人 - RedSnow 於 2005/05/28 17:11:32
|
chengwei
一般會員 發表:18 回覆:9 積分:5 註冊:2005-04-04 發送簡訊給我 |
|
chengwei
一般會員 發表:18 回覆:9 積分:5 註冊:2005-04-04 發送簡訊給我 |
SORRY ; 完整的程式是
if (OpenPictureDialog1->Execute()){ SrcImage->Picture->LoadFromFile(OpenPictureDialog1->FileName); } SrcImage->Picture->SaveToFile("D:\\progressiveJPEG\\tmpimage.bmp"); ShellExecute(Handle,"open","D:\\progressiveJPEG\\cjpeg.exe","-progressive tmpimage.bmp progimage.jpeg",NULL,SW_HIDE); |
RedSnow
版主 發表:79 回覆:1322 積分:845 註冊:2003-12-15 發送簡訊給我 |
chengwei 您好: 我剛才做了一下測試,測試碼如下:
if (OpenPictureDialog1->Execute()){ SrcImage->Picture->LoadFromFile(OpenPictureDialog1->FileName); } SrcImage->Picture->SaveToFile("C:\\tmpimage.bmp"); ShellExecute(Handle,"open","mspaint.exe","C:\\tmpimage.bmp",NULL,SW_SHOW);我不知道您測試的是那支程式?因此我改用小畫家來測試,SrcImage 並未預先載入任何圖像資料,測試結果是 OK 的。 會不會是其它的問題導致的?要不您使用除錯模式單步追蹤一下,看看每個步驟的相關資訊 (函數傳回值、變數內含值....) 是否都正確? 補充一下,我想到另外一個可能性,那就是路徑的問題,您不妨試著將 ShellExecute 裡邊有關檔案的參數都加上絕對路徑,或許問題是出在這裡。 發表人 - RedSnow 於 2005/05/28 18:33:23 |
chengwei
一般會員 發表:18 回覆:9 積分:5 註冊:2005-04-04 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |