delphi实现在EXCEL上注册插件?(100分)

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

grayback

Unregistered / Unconfirmed
GUEST, unregistred user!
采用的方法是:将Office软件目录中EXCEL9.OLB中的类库全部导入Delphi中;
“类库全部导入”的方法:该方法实际就是所谓的做一个office插件,用来扩展excel的功能,实现其所不能做到的或不方便做到的;具体实现:实现IDTExtensibility2接口的自动化对象:
OnConnection:当应用程序连接到插件时会调用这个函数;
OnDisconnection:当应用程序断开插件时被调用 ;
OnStartupComplete:这个函数是当应用程序自动启动插件时被调用的。调用时,其他的插件都已经被加载到了内存,这时可以同其他插件进行通信。
OnBeginShutdown:当应用程序准备关闭并将要断开插件时会被调用
OnAddInsUpdate:当注册的插件列表被改变后会被调用。
对于这五个方法,我们全部要实现它,看具体需要,一般都只用到了OnDisconnection和Onconnection方法做到了对IDTExtensibility2接口的实现,一个插件就差不多OK,在delphi下面编译成Dll文件。

[blue]现在碰到这样一个问题:注册在EXCEL上的插件,比如我按其中一个按钮弹出一个窗口,不管窗口是模态的还是非模态的都不能实现窗口中文本编辑框和EXCEL单元格之间进行切换编辑.试过将主应用程序的Application.Handle传进DLL再做善后处理.但还是不能实现窗口和EXCEL能切换编辑?程序运行在任务栏上的图标是EXCEL的图标,我想插件上按钮弹出的窗口与EXCEL根本就是两个应该程序吧,而在VBA端做的窗口可以和EXCEL进行同时编辑,可我要的是在Delphi里处理的窗口.[/blue]急!!!
 
有没有一种办法直接改变EXCEL句柄,把主应用程序的句柄传给它,使插件上的窗口和EXCEL成一个应用程序?
 
急!!!分数不多,解决问题,另开贴加100分.
 
兄弟们快帮帮小弟吧!没人会吗?
 
你是要在EXCEL中注册一个插件吗?
 
是的,插件已经完成了.
 
to wjj0310:明白我遇到的困难了吗?
 
急急急.....高手进来帮一下!!!感激不尽...
 
不是很明白的说。

你插件都做好了。就是按扭的功能没有达到你想要的效果是吗?
那这样怎么好解决,又看不到你实现部分的代码。。。。不好说
 
呵呵,你读懂我题目再说吧.
 
找了一上午资料还是没有得到解决问题的办法,急死了,都没人遇到过这类问题嘛?
 
折腾了一下午还是没有解决问题.....请求高手....
 
是否该从EXCEL句柄下手.
 
咋就没一个人来发表发表呢?太难了吗?
 
有什么办法让插件上按钮弹出的窗口成为当前EXCEL的children
 
高手们呢....快来救人啊.
 
还是没人,急!!!
 
郁闷累....还是没人来发表发表吗,分不够再加.
 
真的没有一个人会吗
................
 
后退
顶部