none
如何在自己创建的ole container中,使用一个独立进程Excel,防止Excel设置单元格样式时,阻塞ole container 的操作??? RRS feed

  • 常规讨论

  • 如题:

     如何在自己创建的ole container中,使用一个独立进程Excel,防止Excel设置单元格样式时,阻塞ole container 的操作???

      //原来代码, 共享excel进程, 会发生阻塞问题

      hr = CoCreateInstance(clsid, NULL, CLSCTX_ALL, IID_IUnknown, (void**)&punk);

    //创建独立进程Excel的代码, 但是 InPlaceActivate 返回 E_NoInterface 错误。

    _ApplicationPtr spExcelApp;
    hr = spExcelApp.CreateInstance(_T("Excel.Application"));
        spExcelApp->put_Visible(1, VARIANT_FALSE);
        spExcelApp->put_UserControl(VARIANT_TRUE);

    if(SUCCEEDED(hr))
    hr = m_pOleUIWnd->InPlaceActivate();

     这个问题最近困扰了我好久, 看了ole container 与 object 的原理, 还是不能解决, 各位大侠帮忙帮忙.


    2012年8月2日 10:15

全部回复

  • 这个你去excel的论坛问吧。


    Please mark this reply as answer if it helps you! Thanks for your cooperation! Good Luck to you.

    2012年8月3日 7:47
  • 我是在我自己创建的 ole container中, 以local server 方式引用excel 的, 主要问题还是在创建excel进程上(不限于excel,word也有此问题),所以问题还是在com创建方面了。 

    所以还请vc++ com方面的专家给点提示什么的。 万分感谢了 !!

    2012年8月4日 1:37
  • 你好,

    由于您的问题没有固定统一的答案,所以这里我将会把您的帖子改成“常规讨论”。

    感谢您的理解与支持。

    此致


    Elegentin Xie [MSFT]
    MSDN Community Support | Feedback to us

    2012年8月27日 6:45
    版主