在csdn論壇看到有網友提問如何把程式釘到windows7的工作列,ccrun(妖哥)對這個問題很感興趣,於是google了一下,沒有找到相關的api資料,但是在國外的乙個站點看到用folderitemverb物件來實現的方法,關於具體的資料,可以查閱msdn:
在delphi中實現的**如下。編譯環境:delphi7和xe2,測試作業系統為中文和英文windows7
uses comobj;
var vshell, vfolder, vfolderitem, vitemverbs: variant;
i: integer;
str: string;
h: hinst;
szpinname: array[0..255] of char;
begin
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
end;
在c++builder中的實現**如下。編譯環境:c++builder6和xe2,測試作業系統:中文和英文windows7
; ::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工作列 修正版
源 如何把程式釘到windows7工作列 修正版 在csdn論壇看到有提問如何把程式釘到windows7的工作列,ccrun 妖哥 對這個問題很感興趣,於是google了一下,沒有找到相關的api資料,但是在國外的乙個站點看到用folderitemverb物件來實現的方法,關於具體的資料,可以查閱m...
如何把程式釘到Windows7工作列 修正版
源 如何把程式釘到windows7工作列 修正版 在csdn論壇看到有提問如何把程式釘到windows7的工作列,ccrun 妖哥 對這個問題很感興趣,於是google了一下,沒有找到相關的api資料,但是在國外的乙個站點看到用folderitemverb物件來實現的方法,關於具體的資料,可以查閱m...
windows 7下如何解除安裝grub
vista windows 7下如何解除安裝grub 這是我找了很多方法以後唯一可行的,完全沒有任何問題,所以你不必擔心系統會出問題。linux的分割槽已經被你從windows中刪除,系統啟動後停在 grub 提示符處。在 grub 提示符後輸入 rootnoverify hd0,0 回車。將第一塊...