我添加了IrisSkin2.dll之后,把控件拖到界面上,但是使用的时候有一个问题,必须有一个皮肤界面才正常,不然我不用任何皮肤的话,也就是系统里拖动了控件,但是代码里没写任何有关皮肤的东西,系统就会报错:“正试图在 OS 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。”所以我在load中加了皮肤:skinEngine1.SkinFile = Application.StartupPath + @"\Skins\Office2007\Office2007.ssk"
系统就能正常运行,然后因为需要还原成windows默认的系统皮肤,所以我设置为:skinEngine1.Active = false但是还是报错:
“正试图在 OS 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。”这可怎么还原系统默认的皮肤呢?有没修改任何皮肤的.ssk文件吗?

解决方案 »

  1.   

    我有一个皮肤文件 里面有很多皮肤样式  LZ要的话
    QQ453367672
      

  2.   

    把控件删了不就行了吗?
    skinEngine1.SkinFile = "";也可以
      

  3.   

    这个简单呀,IrisSkin2.dll
    你可以在程序中直接引用这个IrisSkin2.dll
    再使用相应功能即可,
      

  4.   

    有什么IrisSkin2.dll问题,你可说详细些,我帮你处理
      

  5.   

    是这样的,我在使用这个控件的时候,别人提出可以还原为系统默认的皮肤,而不是.ssk皮肤,然后我把skinEngine1.SkinFile =“”;试了还是不行,也就是说在程序运行起来的时候,如果没有写任何关于skinEngine1的皮肤路径的问题的话系统就会报错,我上面提到的那个错误,然后选择了一个皮肤的话不能还原为系统默认的皮肤了,也就是没使用ssk时候的皮肤效果,然后查了一个网,有人说设置skinEngine1.Active = false就可以了,但是我这样设置之后还是不行,界面运行不起来,一片空白,对了,我还安装了DXperience,不知道会不会有冲突。
      

  6.   

    我不知道,难道我的dll不好???