Skip to content
DarkKaiser의 블로그
DarkKaiser의 블로그
  • 개발 관련 자료(노션)
  • Raspberry Pi(노션)
  • WD My Cloud(노션)
  • GitHub
DarkKaiser의 블로그

[태그:] COM

COM DLL만으로 tlb파일 생성및 COM사용하기

DarkKaiser, 2008년 11월 17일2023년 9월 6일

출처 : http://thepassion.tistory.com/22

  1. visual studio도구의 OLE View나 실행oleview를 실행해서 oleviewer를 실행시킨다.
  2. FileView TypeLib메뉴를 선택해 해당 COM dll혹은 COM exe를 Open한다.
  3. 디스플레이되는 정보에서 Root로 표시되는 XXX(xxx x.x Type Library)를 클릭하면 오른쪽 윈도우에 idl파일을 생성해서 보여준다.
  4. 해당 내용을 xxx.idl로 저장한다.
  5. *.tlb 파일 생성하기
    방법1)
    – Win32 Dynamic Linked Library프로젝트 생성해
Continue Reading

VC에서 원격 데이터 객체 호출하는 방법

DarkKaiser, 2008년 4월 11일2023년 9월 5일
IDispatch* CreateConnection(LPCTSTR strAddr)
{
#ifdef UNICODE
  LPTSTR strAddress = strAddr;
#else
  size_t sl = strlen(strAddr);
  LPWSTR strAddress = new WCHAR[sl+1];
  strAddress[sl] = 0;
  mbstowcs(strAddress, strAddr, sl);
#endif

  IDispatch* pDispatch = NULL;
  bool ok = false;
  RDS::IDataspacePtr pDS;
  if (SUCCEEDED(pDS.CreateInstance(OLESTR("RDS.DataSpace"))))
  {
    _variant_t Result;

    try
    {
      Result = pDS-CreateObject(_bstr_t("Component.bizCOM"), _bstr_t(strAddress));
      HRESULT 
Continue Reading

VB의 자동화 사용

DarkKaiser, 2008년 4월 9일2023년 9월 2일

후기바인딩 사용

Dim obj as Object
Set obj = CreateObject("AddBack.AddBack.1")
obj.Prop = propVaue
obj.Method

초기바인딩 사용

Dim obj As AddBack
Set obj = New AddBack
obj.someMethod

첫번째 문장이 실행되어 Visual Basic 함수인 CreateObject가 호출될 때 Visual Basic은 COM 라이브러리의 CLSIDFromProgID 함수를 호출하여 CreateObject 함수의 매개변수에 지정된 ProgID를 대응되는 CLSID로 변환한

Continue Reading

구성요소 서비스의 내 컴퓨터 기본 DCOM 통신 속성 변경하기

DarkKaiser, 2008년 3월 27일2023년 9월 6일

참고 :
http://msdn2.microsoft.com/en-us/library/ms687763(VS.85).aspx
http://msdn2.microsoft.com/en-us/library/ms682790(VS.85).aspx

기본 속성 읽어오기

try
{
  ICOMAdminCatalogPtr spCatalog(_T("COMAdmin.COMAdminCatalog"));
  spCatalog-Connect(_T("localhost"));

  ICatalogCollectionPtr spCatalogCollection = (ICatalogCollectionPtr)spCatalog-GetCollection(_T("LocalComputer"));
  spCatalogCollection-Populate();

  long nCount = 0;
  nCount = spCatalogCollection-Count;
  if (nCount == 0)
  {
    AfxMessageBox(_T("내 컴퓨터의 DCOM 통신 속성을 읽어오지 못하였습니다."));
    return;
  }

  ASSERT(nCount == 1);

  ICatalogObjectPtr spCatalogObject;
  spCatalogCollection-get_Item(0, (IDispatch**)&spCatalogObject);

  
Continue Reading

ATL ActiveX 에서 실행시 보안 팝업창 없애는 법

DarkKaiser, 2008년 3월 23일2023년 9월 6일

이 글은 브라우저 상단에 뜨는 ActiveX 경고창이 아닌 ActiveX 스크립트 실행중에 별도로 뜨는 ActiveX 스크립트 경고 팝업창을 없애는 방법을 말한다.(아래그림)

컨트롤이 스크립팅에 대해 안전함을 표시

Internet Explorer에서 컨트롤이 있는 웹 페이지를 볼 수 있으며 보다 편리하게 Visual C++ .NET에 빌드된 웹 브라우저 뷰를 사용할 수 있습니다. 웹 브라우저 뷰에서 컨트롤을

Continue Reading

IWebBrowser2와 IHTMLDocument2의 상호변환

DarkKaiser, 2007년 6월 30일2023년 9월 5일

1. IWebBrowser2 에서 IHTMLDocument2 인터페이스 구하기

IWebBrowser2 *m_pWebFromUnknown;
IWebBrowser2 *m_pWebFromDoc;

STDMETHODIMP CTestObj::SetSite( IUnknown *pUnkSite )
{
    IOleClientSite *pClientSite;
    HRESULT hr;

    hr = pUnkSite-QueryInterface( IID_IOleClientSite, 
    (LPVOID *)&pClientSite );
    if ( FAILED( hr ) ) return S_OK;

    IOleContainer *pContainer;
    hr = pClientSite-GetContainer( &pContainer );
    pClientSite-Release();
    if ( FAILED( hr 
Continue Reading

최신 글

  • AssertJ 소개testCompile ‘org.assertj:assertj-core:3.6.2’ 2017년 9월 14일
  • 자주 사용되는 Lombok 어노테이션 2017년 9월 14일
  • 유니코드 #3 2017년 9월 14일
  • 유니코드 #2 2017년 9월 14일
  • 유니코드 #1 2017년 9월 14일

최신 댓글

    카테고리

    • 개인 자료 (1)
      • 일기 (1)
    • 주절주절 (7)
    • 프로그래밍 갤러리 (16)
    • 프로그래밍 언어 (186)
      • Java (29)
      • C/C++/VC++ (114)
      • C# (11)
      • Visual Basic (6)
      • 안드로이드 (9)
      • Objective-C (5)
      • JavaScript (4)
      • JSP/Servlet (2)
      • Python (4)
      • 어셈블러 (1)
    • 개발++ (44)
      • Book (11)
        • Joel On Software (10)
      • 프로젝트 관리 (6)
      • Maven (1)
      • 디버깅 (1)
      • DirectX (1)
      • Silverlight (1)
      • RESTful (1)
      • Hacking (1)
      • WDM (4)
      • VoIP (5)
      • 기타 (1)
    • 개발 도구 (15)
      • eclipse (14)
      • Sublime Text (1)
    • 네트워크 (7)
    • 설치 및 배포 (7)
      • InstallShield (2)
      • NSIS (4)
    • 버전 관리 (9)
      • Git (2)
      • CVS (2)
      • Subversion (5)
    • 데이터베이스 (7)
      • Oracle (3)
      • Sybase (2)
      • MS-SQL (2)
    • 단위테스트 (3)
      • JUnit (1)
      • NUnit (2)
    • 버그추적시스템 (2)
      • mantis (2)
    • 운영체제 (7)
      • Windows (5)
      • 리눅스 (2)
    • WAS (3)
      • WebLogic (3)
    • 디자인패턴 (1)
    • 디지털 이미지 프로세싱 (16)

    태그

    Assert() CImage cvsnt DDK DefaultTraceListener delegate eclipse EventLogTraceListener maven MDI MFC MSDN mutable NAnt new pragma RAW snoopspy std::auto_ptr STLFit STLPort STLTask TCP/IP Thread UNICODE useBean VI volatile watch WinSXS XP테마 기하학 데이터소스 드라이브 마스크 문자열 상수 스레드 스레드 동기화 시간 실용주의 실용주의 프로그래머 자바빈즈 툴팁 패킷

    메타

    • 로그인
    • 엔트리 피드
    • 댓글 피드
    • WordPress.org
    ©2025 DarkKaiser의 블로그 | WordPress Theme by SuperbThemes