在olecontainer中如何控制嵌入的对象,如屏蔽word文档的拷贝,复制功能等(200分)

  • 主题发起人 主题发起人 gunakid
  • 开始时间 开始时间
G

gunakid

Unregistered / Unconfirmed
GUEST, unregistred user!
急,请帮忙!分不够可以加
 
好像OleContainer只能自动替换菜单组编号为偶数的,奇数的保留。看看接口库吧,应该有专门的方法可以控制的。
 
简单,在你放置ole容器的窗体上放上一个toolbar控件,添加几个按钮,你随便把
几个按钮的visbale属性设为false,word的对应位置就看不到了,菜单也一样搞定
 
to delphi浪客

可以屏蔽键盘的Ctrl+C(复制)和Ctrl+V(粘贴) “功能”吗?
谢谢!
 
显然不行,我们公司做的都没这么狠,你们老板也太黑了吧,别人这样copy都不让?
除非你把Ctrl+C(复制)和Ctrl+V(粘贴)这两个按键消息截获掉
 
to delphi浪客
我是帮学校做的,我还是学生,还望帮忙!
 
救救我,加200分
 
好啊。。这么多大洋。。我全包了啊。。^_^ 我就辛苦点了,你在程序里加个钩子,搞掉Ctrl+C(复制)和Ctrl+V(粘贴)
代码如下:(直接copy后试一试吧。。很爽的)
function KeyboardHook(nCode: Integer; wParam: WPARAM;
lParam: LPARAM): LResult; stdcall;
var
Form1: TForm1;
WinHook: HHOOK; // a handle to the keyboard hook function
implementation
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
//上个钩子
WinHook:=SetWindowsHookEx(WH_KEYBOARD, @KeyboardHook, 0, GetCurrentThreadID);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
//脱钩
UnhookWindowsHookEx(WinHook);
end;

function KeyboardHook(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LResult;
const
_KeyPressMask = $80000000;
begin
{if we can process the hook information...}
if (nCode>-1) then
// 侦测 Ctrl + C 组合键
if ((lParam and _KeyPressMask) = 0) and
(GetKeyState(vk_Control) < 0) and ((wParam = Ord('C')) or (wParam = Ord('V'))) then
begin
Result := 1;
end
else
Result := 0
else
Result := CallNextHookEx(WinHook, nCode, wParam, lParam);
end;
 
谢谢,我已经放弃了
 
我正在找olecontainer方面的资料,这过帖子先关注一下先.
 
delphi浪客,大侠
@KeyboardHook怎么编译不过
要uses什么单元吗?
 
失误,知道了
谢谢
 

Similar threads

后退
顶部