Call Word.cpp
上传用户:bjlvip
上传日期:2010-02-08
资源大小:744k
文件大小:1k
源码类别:

Windows编程

开发平台:

Visual C++

  1. #include <windows.h>
  2. #include <iostream.h>
  3. void main()
  4. {
  5. CoInitialize(NULL);
  6. CLSID clsid;
  7. OLECHAR wb[] = L"Word.Application";
  8. CLSIDFromProgID(wb, &clsid);
  9. OLECHAR pszCLSID[39];
  10. StringFromGUID2(clsid, pszCLSID, 39);
  11. char buffer[39];
  12. wsprintf(buffer, "%S", pszCLSID);
  13. cout << "CLSID: " << buffer << endl;
  14. IDispatch* pDispatch;
  15. CoCreateInstance(clsid, NULL, CLSCTX_SERVER, IID_IDispatch, (void**)&pDispatch);
  16. DISPID dispid;
  17. OLECHAR* szMember = L"Visible";
  18. HRESULT hr = pDispatch->GetIDsOfNames(IID_NULL, &szMember, 1, LOCALE_SYSTEM_DEFAULT, &dispid);
  19. if(FAILED(hr))
  20. cout << "GetIDsOfNames failed" << endl;
  21. cout << "DispID of Visible = " << dispid << endl;
  22. VARIANTARG test = { VT_BOOL, 0, 0, 0, VARIANT_TRUE };
  23. DISPID dispidnamed = DISPID_PROPERTYPUT;
  24. DISPPARAMS param = { &test, &dispidnamed, 1, 1 };
  25. hr = pDispatch->Invoke(dispid, IID_NULL, LOCALE_SYSTEM_DEFAULT,
  26. DISPATCH_PROPERTYPUT, &param, NULL, NULL, NULL);
  27. if(FAILED(hr))
  28. cout << "Invoke failed" << endl;
  29. pDispatch->Release();
  30. CoUninitialize();
  31. }