呼叫外部執行檔的問題 |
|
Pro
一般會員 ![]() ![]() 發表:3 回覆:3 積分:1 註冊:2002-06-10 發送簡訊給我 |
我想要呼要外部執行檔(UltraEdit)並令其開啟一個我程式中選定的文字檔
利用 ListBox 來選擇 一個列出來的文字檔,其內容已經包含完整之路徑與檔名
程式片段如下: var
FileN : String; begin
FileN := ListBox1.Items.Strings[ListBox1.ItemIndex];
FileN := '"C:\Program Files\UltraEdit\UEDIT32.EXE" "' FileN '"';
WinExec(FileN,SW_SHOW); 但是執行到WinExec(FileN,SW_SHOW);
卻出現 Incompatible types: 'String' and 'PChar' 的錯誤
可是我我的 FileN 明明就是 String 的型態呀?
請問我哪裡出錯了?
謝謝!
|
領航天使
站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:12216 回覆:4186 積分:4084 註冊:2001-07-25 發送簡訊給我 |
引言: 我想要呼要外部執行檔(UltraEdit)並令其開啟一個我程式中選定的文字檔 利用 ListBox 來選擇 一個列出來的文字檔,其內容已經包含完整之路徑與檔名 程式片段如下: var FileN : String; begin FileN := ListBox1.Items.Strings[ListBox1.ItemIndex]; FileN := '"C:\Program Files\UltraEdit\UEDIT32.EXE" "' FileN '"'; WinExec(FileN,SW_SHOW); 但是執行到WinExec(FileN,SW_SHOW); 卻出現 Incompatible types: 'String' and 'PChar' 的錯誤 可是我我的 FileN 明明就是 String 的型態呀? 請問我哪裡出錯了? 謝謝!Win API的函數原型都是以C語言型態定意的,在C中是沒有String型態, String可說為Pascal特有,所以要用pchar()將stinrg轉型為pchar才能傳入 WinExec(pchar(FileN),SW_SHOW); ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~ |
Pro
一般會員 ![]() ![]() 發表:3 回覆:3 積分:1 註冊:2002-06-10 發送簡訊給我 |
|
領航天使
站長 ![]() ![]() ![]() ![]() ![]() ![]() 發表:12216 回覆:4186 積分:4084 註冊:2001-07-25 發送簡訊給我 |
引言: 成功了!! 非常感謝!< >< > 能否再請教 如果要設計 再執行外部執行檔(UltraEdit) 找不到時 改以記事本開啟檔案 要如何判斷 外部執行檔(UltraEdit) 找不到呢? 謝謝! 發表人 - pro 於 2002/06/14 22:41:06if not fileexists('C:\Program Files\UltraEdit\UEDIT32.EXE') then ... ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~ |
Pro
一般會員 ![]() ![]() 發表:3 回覆:3 積分:1 註冊:2002-06-10 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |