关于OleContainer的两个问题,200分求救 ( 积分: 200 )

  • 主题发起人 主题发起人 tdtjjiao
  • 开始时间 开始时间
T

tdtjjiao

Unregistered / Unconfirmed
GUEST, unregistred user!
1.OleContainer在调用word的时候屏蔽,打印,复制,粘贴=攻能
同时键盘也不能用ctrl+v,ctrl+c,ctrl+x,ctrl+p,ctrl+n,ctrl+z=功能
2.OleContainer在调用word的时候屏蔽鼠标右键。
谢谢各位高手了。
 
1.OleContainer在调用word的时候屏蔽,打印,复制,粘贴=攻能
同时键盘也不能用ctrl+v,ctrl+c,ctrl+x,ctrl+p,ctrl+n,ctrl+z=功能
2.OleContainer在调用word的时候屏蔽鼠标右键。
谢谢各位高手了。
 
晕,没人知道?
 
屏蔽:
OleContainer1.AutoActivate := aaManual;
OleContainer1.AutoVerbMenu := False;
激活:
OleContainer1.doVerb( ovShow );
 
看一下以前的贴子

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里面的
 
1.OleContainer在调用word的时候屏蔽,打印,复制,粘贴=攻能
同时键盘也不能用ctrl+v,ctrl+c,ctrl+x,ctrl+p,ctrl+n,ctrl+z=功能
----------------------------------
和剪贴板有关的东西,可以监视剪贴板,一有数据就EmptyClipboard,包括PrintScreen拷屏,[blue]这个东西是不可能通过Word本身的功能来实现的,所以不要考虑用宏的方式了[/blue]

2.OleContainer在调用word的时候屏蔽鼠标右键。
-------------------------------------
其实楼主做的这些目的只有一个,那就是只读和保护文档,以前见过一个类似的东西,就是看到的效果是灰色的,不可编辑的,但是有多页,当然所有这些快捷键和右键都失效了,不过不能屏蔽PrintScreen,代码实在找不到了,刚刚有在网上搜索了一遍,大概在
http://www.2ccc.com
htpp://www.delphifans.com
http://www.playicq.cn
这3个地方,关键字可能是OleContainer Word 浏览

好像是
http://playicq.cn/1/10735.html
楼主自己测一下,好运吧,如果可以,请记得给分[:D][:D]
 
的一个问题, 用宏, 你给出Email 我传Demo给你

第2 个问题, 不好意思不懂
 
我的油箱是zdljhl@163.com
 
后退
顶部