如何設計開QRP檔,直接Preview畫面的程式 |
答題得分者是:TWY
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
TWY
高階會員 發表:2 回覆:133 積分:152 註冊:2009-09-02 發送簡訊給我 |
[code delphi] procedure TfrmOthers_Registry.Button5Click(Sender: TObject); procedure _RegisteApLinkToExtension(sExtension, sTip, Descripcion, sLinkApExeName:string; iParam: integer); {Uses: Registry, ShlObj} var Reg: TRegistry; begin Reg := TRegistry.Create; try with Reg do begin RootKey := HKEY_CLASSES_ROOT; OpenKey(sExtension, True); WriteString('', sTip); CloseKey; OpenKey(sTip, True); WriteString('', Descripcion); CloseKey; OpenKey(sTip '\DefaultIcon', True); WriteString('', sLinkApExeName ',' IntToStr(iParam)); CloseKey; OpenKey(sTip '\Shell\Open', True); WriteString('', '&Open'); CloseKey; OpenKey(sTip '\Shell\Open\Command', True); WriteString('', '"' sLinkApExeName '" "%1"'); CloseKey; end; SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil); finally Reg.Free; end; end;//_RegisteApLinkToExtension(); procedure _RegisteApLinkToExtensionSubMenuCaption( sExtension,sLinkApExeName,sSubMenuCaption :string); var Reg : TRegistry; sStr : string; begin Reg := TRegistry.Create; try Reg.RootKey := HKEY_CLASSES_ROOT; if Reg.OpenKeyReadOnly('\.' sExtension) then begin sStr := Reg.ReadString(''); if sStr <> '' then if Reg.OpenKey('\' sStr '\shell', False) then Reg.Access := KEY_READ or KEY_WRITE; if Reg.OpenKey('APTprocess', True) then begin Reg.WriteString('', sSubMenuCaption); Reg.Access := KEY_READ or KEY_WRITE; if Reg.OpenKey('command', True) then Reg.WriteString('','"' sLinkApExeName '" "%1"'); end; end else raise Exception.create('Lo siento, la sExtension no es conocida por Windows'); finally Reg.Free; end; end;//_RegisteApLinkToExtensionSubMenuCaption(); begin //註冊某副檔名以指定程式開啟 //將 .TST 副檔名的檔案 在檔案種管中點選會以指定的 如 Application.ExeName 這支程式開啟 //ps:經實驗雖然 xx.tst 是文字檔 但在檔案總管中看到的卻跟 Application.ExeName 一樣的 Icon // 按下右鍵也會出現連結選單到 Application.ExeName 喔! _RegisteApLinkToExtension('.TST', 'Test', 'Descrip Here', Application.ExeName, 0); //SubMenu 選單 Caption _RegisteApLinkToExtensionSubMenuCaption('TST', Application.ExeName, '用 xxx.exe 開啟'); //<-SubMenu 選單 Caption end; [/code]
編輯記錄
TWY 重新編輯於 2010-01-19 09:07:50, 註解 無‧
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
|
TWY
高階會員 發表:2 回覆:133 積分:152 註冊:2009-09-02 發送簡訊給我 |
|
ivankuo
中階會員 發表:132 回覆:272 積分:95 註冊:2002-11-21 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |