〓〓如何在Windows桌面右键菜单中加入自己的程序呢?有的显卡程序就可以...〓〓

迷死特兔 2003-03-12 07:13:44
如何在Windows桌面右键菜单中加入自己的程序呢?我看有的显卡程序就可以...
...全文
70 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
jackie168 2003-07-15
  • 打赏
  • 举报
回复
uses
SysUtils,
Windows,
Classes, Messages;

{$R *.res}
var
hNextHook: HWND;

procedure ShowMsg(Msg: string);
begin
MessageBox(GetActiveWindow, Pchar(Msg), 'Info', MB_OK + MB_ICONINFORMATION);
end;

function CallWndProc(nCode: integer; wParam: WPARAM; lParam: LPARAM): Longint; stdcall;
var
Msg: PCWPStruct;
begin
Msg := pointer(lParam);
case Msg.message of
WM_INITMENUPOPUP:
begin
InsertMenu(Msg.wParam, 0, MF_BYCOMMAND or MF_STRING, 100, 'Test');
end;
WM_MENUCOMMAND,WM_SYSCOMMAND:
begin
if Lo(Msg.wParam) = 100 then Beep(500,100);
end;
end;
Result := CallNextHookEx(hNextHook, nCode, wParam, lParam);
end;

procedure Hook; stdcall;
begin
hNextHook := SetWindowsHookEx(WH_CALLWNDPROC, @CallWndProc, HInstance, 0);
end;

procedure UnHook; stdcall;
begin
if hNextHook <> 0 then
UnhookWindowsHookEx(hNextHook);
end;

exports
Hook, UnHook;

begin
hNextHook := 0;
end.

//////////////
调用代码:
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure Hook; stdcall;external 'project2.dll';
procedure UnHook; stdcall;external 'project2.dll';

procedure TForm1.FormCreate(Sender: TObject);
begin
Hook;
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
UnHook;
end;

end.
效果圖片:http://www.eping.net/fourm/UploadFile/200362316553182637.jpg
hljde 2003-07-15
  • 打赏
  • 举报
回复
关注!我也想知道!
piaocl 2003-04-10
  • 打赏
  • 举报
回复
主要运用windows shell 调用com接口

wudi_1982 2003-04-08
  • 打赏
  • 举报
回复
Delphi\Demos\ShellExt\ShellExt
Frend 2003-04-03
  • 打赏
  • 举报
回复
up
DelphiStudy 2003-04-01
  • 打赏
  • 举报
回复
UP
rocl 2003-03-30
  • 打赏
  • 举报
回复
up
叁哥_ 2003-03-27
  • 打赏
  • 举报
回复
关注

zfmich 2003-03-17
  • 打赏
  • 举报
回复
Delphi\Demos\ShellExt\ShellExt
xyue 2003-03-17
  • 打赏
  • 举报
回复
关注 我也希望能实现这样功能
不知道怎么编代码
迷死特兔 2003-03-16
  • 打赏
  • 举报
回复
我看到的是IE的扩展,或是文件相关,但我要的是桌面右键菜单扩展,请能否再详细说说,谢谢!
Linux2001 2003-03-13
  • 打赏
  • 举报
回复
无非就是Windows的外壳扩展
Storm2008 2003-03-12
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/1483/1483295.xml?temp=.7806055
http://www.delphibbs.com/delphibbs/dispq.asp?lid=0940110

我想这些够你看的了

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧