線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1334
推到 Plurk!
推到 Facebook!

如何把我的電腦裏面的C槽,用程式拉一個捷徑到桌面阿

答題得分者是:supman
Egn
一般會員


發表:29
回覆:54
積分:16
註冊:2005-04-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-06-08 14:25:26 IP:61.66.xxx.xxx 未訂閱
我有看了一下,http://delphi.ktop.com.tw/topic.php?TOPIC_ID=34118 這篇文章,可是裏面有一個參數是要填檔案入徑的,但是我在我的電腦中,看C槽的捷逕路徑看不到ㄝ...它是放在哪個目錄中阿..
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-06-08 15:02:10 IP:61.70.xxx.xxx 未訂閱
您好: 若捷徑不存在會建立一個捷徑,若存在,則會去修改. 以下是用delphi寫的,但原理一樣,我下面有一個使用他的範例,您自己改一下.    使用單元
uses shlobj,comobj,activex;    const
    IID_IShellLink: TCLSID  = (D1:$000214EE; D2:$0; D3:$0; D4:($C0,$0,$0,$0,$0,$0,$0,$46));
    IID_IPersistFile: TGUID = (D1:$0000010B;D2:$0000;D3:$0000;D4:($C0,$00,$00,$00,$00,$00,$00,$46));    function TForm1.CreateLink(const lpszPathObj, lpszPathLink, lpszDesc: PChar): HRESULT;
var
    hres: HRESULT;
    psl: IShellLink;
    ppf: IPersistFile;
    wsz: array[0..MAX_PATH] of WideChar;
begin
    hres := CoCreateInstance(CLSID_ShellLink, nil, CLSCTX_INPROC_SERVER,
        IID_IShellLink, psl);
    if (SUCCEEDED(hres)) then begin
        psl.SetPath(lpszPathObj);
        psl.SetDescription(lpszDesc);
        hres := psl.QueryInterface(IID_IPersistFile,ppf);
        if (SUCCEEDED(hres)) then begin
            MultiByteToWideChar(CP_ACP, 0, lpszPathLink, -1, wsz, MAX_PATH);
            hres := ppf.Save(wsz, TRUE);
            ppf := nil;
        end;
        psl := nil;
    end;
    Result := hres;
end;    procedure TForm1.Button2Click(Sender: TObject);
begin
CreateLink ('C:\AUTOEXEC1.BAT', 'C:\A.LNK', '訊息');
end;
第一個參數代表您要執行什麼. 第二個參數代表這個捷徑的檔名. 第三個參數代表這個捷徑內的說明. 以您要使用來說就是 CreateLink ('C:\', 'D:\Documents and Settings\Administrator\桌面', '訊息');
Egn
一般會員


發表:29
回覆:54
積分:16
註冊:2005-04-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-06-08 15:28:04 IP:61.66.xxx.xxx 未訂閱
supman,謝謝喔~~~另外我想問的是,像我一開始不知道怎麼解決這個問題時,第一個就跑去msdn查,可是我keyword是下shortcut...看到你們程式的內容,是用IID_IShellLink,CoCreateInstance來解決的...你們都是怎麼下keyword的阿..因為我看我要是下shortcut應該會找不到答案吧~~~
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-06-08 16:21:36 IP:61.70.xxx.xxx 未訂閱
您好: 我是把能夠想到的關鍵字都做一個聯想去試試看,然後得到範例,再去實驗,不過像這個問題,我之前是搜尋捷徑,然後改一下程式,就得到答案了.
系統時間:2024-05-18 6:30:51
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!