如何利用檔案總管開啟TXT檔? |
尚未結案
|
way888
初階會員 發表:32 回覆:76 積分:36 註冊:2005-05-31 發送簡訊給我 |
弟已經完成一個可以編輯及繪圖的程式,開檔及存檔都沒有問題,
不過有一個技術問題尚無法克服,懇請前輩高手指點迷津...
就是在檔案總管按右鍵.內容.變更.開啟檔案.指定弟寫的程式.exe後,
在檔案總管雙擊一個檔名時,也正常的啟動程式了,
可是一直無法自動開啟此檔案,都還需用OpenDialog來開啟,
這原因是因為我的程式無法獲得檔案總管雙擊時的FileName,
請問有無方法或對策來解決此技術問題?
(因為要開啟的檔案是由別的程式呼叫ShellExe來開啟,所以只能改變檔案總管的開啟檔案選擇用我寫的程式)
|
jow
尊榮會員 發表:66 回覆:751 積分:1253 註冊:2002-03-13 發送簡訊給我 |
|
00156
高階會員 發表:45 回覆:195 積分:112 註冊:2002-06-01 發送簡訊給我 |
如過是要直接指定檔案關聯來開啟,我的作法是應用程式必須能接受參數,然後直接修改機碼達到檔案關聯的目的。例如指定*.abc檔案由我的應用程式開啟:
const MyAppPath = 'C:\WINNT\MyProgram.exe'; procedure TForm1.SetFileAssociation; var reg:TRegistry; FileType_:string; begin reg:=TRegistry.Create; reg.RootKey:=HKEY_CLASSES_ROOT; try if reg.OpenKey('.abc',true) then begin if reg.ReadString('')='' then reg.WriteString('','MyFileFormat'); FileType_:=reg.ReadString(''); reg.CloseKey; if reg.OpenKey(FileType_ '\Shell\open\command',true) then begin reg.WriteString('',MyAppPath ' "%1"'); reg.CloseKey; SHChangeNotify(SHCNE_ASSOCCHANGED,SHCNF_IDLIST,nil,nil); end; end; finally reg.Free; end; end; |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |