8

我的简单项目出现错误。

这是我的代码:

if (axZKFPEngX1.InitEngine() == 0) {
    label1.Text = "Connected";
}
else {
    label1.Text = "Connection Failed";
}

我已经添加了参考复合材料AxInterop.ZKFPEngXControlInterop.ZKFPEngXControl.

调试时,我单击按钮,出现警告:

已处理 InvalidActiveXStateException。

“引发了‘System.Windows.Forms.AxHost+InvalidActiveXStateException’类型的异常”**

4

2 回答 2

23

尝试CreateControl()先从您的组件调用。

于 2011-10-14T15:42:12.447 回答
1

康斯坦丁的答案是满足您的要求,但在这里我想再添加一件事。如果您想通过所有线程而不是仅通过调用线程(在多线程场景中)来反映此更改,请使用

CreateControl();
InitWB();
SkinAllThreads();

实际上,在多线程场景中,如果您的皮肤代码位于其中一个线程中,那么它可能不会反映其他当前线程的更改,因此当时该代码在其中发挥着重要作用。

以下是我提到的一些文件,请仔细阅读以供参考:

  1. initwb() 方法
  2. DirectSkin 其他方法
  3. 将直接皮肤添加到应用程序
于 2014-09-30T12:26:48.463 回答