2010-07-12 305 views
2

正如标题所指出的,我想要做的是在C#控制台应用程序中使用.OCX控件(即AxShockwaveFlashObject)。 我认为这是可能的,正如我以前看到过的那样。但它是C++,我甚至不知道它是.NET。 那么,有可能吗?如果是这样,怎么样?在C#.NET控制台应用程序中使用OCX控件

感谢, Leeron

+0

您打算如何处理该控件? – Andrey 2010-07-12 14:09:19

+0

我打算使用ocx控件对flash(swf)文件进行一些批处理,并使用容器应用程序编写文件,编码图像等。 隐藏的表单想法听起来像是要走的路,对吗? – Leeron 2010-07-12 14:28:08

回答

1

这取决于你想用它来做什么。您可以在控制台应用程序中使用表单(如果需要,它们可以不可见),并且使用Visual Studio表单设计器将ActiveX控件放置在表单上很简单。

+0

您是否认为使用带有隐藏窗体而不是Windows应用程序的控制台应用程序会对性能产生积极影响? – Leeron 2010-07-12 14:42:59

+0

对性能的影响与什么相比? – 2010-07-12 14:52:05

+0

与在Windows窗体应用程序中运行相同的窗体(我们在控制台应用程序中隐藏的窗体)相比。 – Leeron 2010-07-12 14:59:20

3

OCX文件只是一个具有不同文件扩展名的本机DLL。除非控件本身依赖创建窗口句柄,否则您应该能够与它互操作而不创建任何UI,在这种情况下,隐藏窗体方法将是最好的。

如果您还没有互操作的DLL(这暴露了COM组件的管理接口),您可以使用命令行aximp的Windows窗体ActiveX控件导入)工具生成它们或通过拖动OCX到Visual Studio工具箱中。