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

Windows编程

开发平台:

Visual C++

  1. #define _WIN32_DCOM
  2. #include <windows.h>
  3. #include <iostream.h>
  4. #include <stdio.h>
  5. #include <conio.h>
  6. #include "componentcomponent.h"
  7. void main()
  8. {
  9.     HRESULT hr;
  10. hr = CoInitializeEx(NULL, COINIT_MULTITHREADED);
  11.     if(FAILED(hr))
  12.         cout << "CoInitializeEx failed. " << endl;
  13. IPrime* pPrime = 0;
  14. hr = CoCreateInstance(CLSID_InsideCOM, 0, CLSCTX_LOCAL_SERVER, IID_IPrime, (void**)&pPrime);
  15. if(FAILED(hr))
  16.     cout << "CoCreateInstance FAILED" << endl;
  17. IPipeLong* pPipeLong = 0;
  18. hr = pPrime->QueryInterface(IID_IPipeLong, (void**)&pPipeLong);
  19. if(FAILED(hr))
  20.     cout << "QueryInterface for IPipeLong FAILED" << endl;
  21. ULONG pulled = 0;
  22. long bugger[100000];
  23. hr = pPipeLong->Pull(bugger, 100000, &pulled);
  24. if(FAILED(hr))
  25.     cout << "Pull 100 FAILED" << endl;
  26. cout << "pulled " << pulled << endl;
  27. _getch();
  28. for(ULONG count = 0; count < pulled; count++)
  29. cout << bugger[count] << " ";
  30. pPipeLong->Release();
  31. for(int testnumber = 1000000; testnumber < 1001000; testnumber++)
  32. {
  33. int result = 0;
  34. hr = pPrime->IsPrime(testnumber, &result);
  35. if(result)
  36. cout << endl << testnumber << " is prime." << endl;
  37. }
  38. pPrime->Release();
  39.     CoUninitialize();
  40. }