zoukankan      html  css  js  c++  java
  • first Automation

        //创建一个容器
        CEmbWordCntrItem * pItem = NULL;
        CEmbWordDoc * pDoc = GetDocument();
        pItem = new CEmbWordCntrItem(pDoc);
        CLSID clsid = {0};
        //创建Automation服务器
        CLSIDFromProgID(L"Word.Document", &clsid);
        pItem->CreateNewItem(clsid);
        //显示
        pItem->DoVerb(OLEIVERB_SHOW, this);
        CRect rcClient;
        GetClientRect(&rcClient);
        pItem->SetItemRects(&rcClient);

      m_pSelection = pItem;

    菜单 View 添加Command OnText { //获取Word.Document的接口 _Document doc  m_pSelection->GetDispatch(); _Application app = doc.GetApplication(); Selection sel = app.GetSelection();  //输入文字  sel.TypeText("Hello World");

    IDispatch * CEmbWordCntrItem::GetDispatch() { IDispatch * piDispatch = NULL; m_lpObject->QueryInterface(IID_IDispatch, (LPVOID*)&piDispatch);

    } 导入MSWORD.OLB 类型库

    //客户端模式 //创建服务器 //显示 _Application app; app.CreateDispatch("Word.Application"); app.SetVisible("TRUE"); Documents docs = app.GetDocuments(); COleVariant varTemplate(_T""); COleVariant newTemplate(0L); COleVariant varDocumentType(0L); COleVariant varVisiable;

    _Document doc = docs.Add(&varTemplate,

    &newTemplate, &varDocumentType, &varVisiable); Section sel = app.GetSelection(); sel.TypeText("Hello"); doc.Save();

    /////// Atuomation服务器 EXE

    AfxGetMainWnd()->ShowWindow(); GetActiveView()->SetWindowText DLL

    IAutoExe autoexe; autoexe.CreateDispatch("AutoExe.Document"); autoexe.SetVisible(TRUE); autoexe.DetachDispatch();

    添加dll 添加类 CCmdTarget父类 注册 使用

  • 相关阅读:
    Window 窗口类
    使用 Bolt 实现 GridView 表格控件
    lua的table库
    Windows编程总结之 DLL
    lua 打印 table 拷贝table
    使用 xlue 实现简单 listbox 控件
    使用 xlue 实现 tips
    extern “C”
    COleVariant如何转换为int double string cstring
    原来WIN32 API也有GetOpenFileName函数
  • 原文地址:https://www.cnblogs.com/klxll/p/3239785.html
Copyright © 2011-2022 走看看