windows – 需要ActiveX控件才能将Excel嵌入到对话框中
我正在构建一个“从Excel导入”功能.它必须位于DLL中,从非MFC应用程序调用.必须提供电子表格的图像,用户可以拖动选择框(选择单元格),然后单击“导入”按钮,并发生正确的事情.无法获取电子表格,在其旁边有一个按钮,并在DLL中发生.
我在DLL中进入了MFC对话框的路径,但在尝试在对话框的窗口上为excel启动OLE客户端时被阻止.只有支持我发现使用OLE显示Excel需要SDI.我能够使自动化功能起作用,我可以读取单元格并在我的对话框上绘制它们的“假图像”……但我担心这将不符合我的要求. 所以我尝试创建一个SDI.我能够创建一个SDI,将Excel作为OLE客户端.我能够处理“选择更改”事件,并获取我需要的单元格数据.在这一点上我被挫败了两件事: >无法使此SDI在MFC DLL中工作.在CWinApp构造函数中崩溃,断言AfxGetThread不为null.将“theApp”移动到单个导出的DLL函数中的本地作用域,但仍然无法使其工作,但具有不同的症状:添加AFX_MANAGE_STATE时崩溃(AfxGetStaticModuleState());导出DLL函数,如果我没有使用它,则从未输入OnInitInstance.尝试添加对应用程序的Run()函数的调用,但这没有帮助.如果有人认为他们知道问题是什么,我可以发布此代码. 所以现在我想我需要回到对话框方法,并嵌入一个ActiveX控件来调出excel电子表格文件进行导入. 必须允许我处理选择更改事件,或者必须允许我查找选择的单元格(或者如果单击对话框中的“导入”按钮导致选定的单元格未被选中,则最近选择了这些单元格. 它还必须具有合理的许可条款,因为这将用于广泛向公众提供的商业应用程序中. 如果有人知道我试过的任何一种方法的“快速修复”,那也是有用的. 希望可以有人帮帮我! 解决方法
如果您只想嵌入Excel,则不需要任何操作.
只需将其嵌入标准OCX主机控件即可. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Windows CMD:列出dir和subdir中没有给定扩展名的文件
- 使用Window的RelativeSource进行WPF绑定需要Path中的“Data
- 当Windows Mobile .NET设备使用Web服务时,“无法与远程服务
- Windows 8 metro – 如何制作密码文本框?
- windows – 如何更改已部署服务器的SID?
- 在Windows上模拟/ dev / random
- 忽略Windows Genuine Advantage安装弹出窗口的任何副作用
- 使用Chef Solo配置Windows EC2实例并引导它
- windows – 当自托管究竟导致AddressAccessDeniedException
- opencv-windows安装教程