源:如何把程式釘到windows7工作列(修正版)
在csdn論壇看到有網友提問如何把程式釘到windows7的工作列,ccrun(妖哥)對這個問題很感興趣,於是google了一下,沒有找到相關的api資料,但是在國外的乙個站點看到用folderitemverb物件來實現的方法,關於具體的資料,可以查閱msdn:
在delphi中實現的**如下。編譯環境:delphi7和xe2,測試作業系統為中文和英文windows7
usescomobj;
);var
vshell, vfolder, vfolderitem, vitemverbs: variant;
i: integer;
str: string;
h: hinst;
szpinname:
array[0..255] of
char;
begin
vshell := createoleobject('');
vpath :=strpath;
vfolder :=vshell.namespace(vpath);
vitemverbs :=vfolderitem.verbs;
h := loadlibrary('
shell32.dll');
loadstring(h,
5386, szpinname, 256
); freelibrary(h);
for i := 1
to vitemverbs.count do
begin
str :=vitemverbs.item(i).name;
if sametext(str, szpinname) then
begin
//63 63 72 75 6e 2e 63 6f 6d
vitemverbs.item(i).doit;
end;
end;end
;procedure
tform1.button1click(sender: tobject);
begin
'c:\windows
', '
regedit.exe');
end;
在c++builder中的實現**如下。編譯環境:c++builder6和xe2,測試作業系統:中文和英文windows7
#include void; ::loadstring(hinst,
5386, szpinname, 256
); ::freelibrary(hinst);
string str;
int ncount = vitemverbs.olepropertyget("
count");
for (int i = 0; i < ncount; i++)
}}void __fastcall tform1::button1click(tobject *sender)
另外,感謝titilima大牛,針對.lnk檔案釘到win7工作列,有更簡便的方法:
c++**:
::shellexecute(null, text("taskbarpin
"), text("
e:\\temp\\notepad.lnk
"), null, null, sw_show);
delphi**:
shellexecute(nil, 'taskbarpin
', '
e:\temp\notepad.lnk
'), nil, nil, sw_show);
如何把程式釘到Windows7工作列 修正版
在csdn論壇看到有提問如何把程式釘到windows7的工作列,ccrun 妖哥 對這個問題很感興趣,於是google了一下,沒有找到相關的api資料,但是在國外的乙個站點看到用folderitemverb物件來實現的方法,關於具體的資料,可以查閱msdn 在delphi中實現的 如下。編譯環境 d...
如何把程式釘到Windows7工作列 修正版
源 如何把程式釘到windows7工作列 修正版 在csdn論壇看到有提問如何把程式釘到windows7的工作列,ccrun 妖哥 對這個問題很感興趣,於是google了一下,沒有找到相關的api資料,但是在國外的乙個站點看到用folderitemverb物件來實現的方法,關於具體的資料,可以查閱m...
windows 7下如何解除安裝grub
vista windows 7下如何解除安裝grub 這是我找了很多方法以後唯一可行的,完全沒有任何問題,所以你不必擔心系統會出問題。linux的分割槽已經被你從windows中刪除,系統啟動後停在 grub 提示符處。在 grub 提示符後輸入 rootnoverify hd0,0 回車。將第一塊...