블로그 이미지
fiadot_old

칼퇴근을 위한 게임 서버 개발 방법론에 대한 심도있는 고찰 및 성찰을 위한 블로그!

Rss feed Tistory
Technical Article 2007. 7. 9. 11:53

NateON dispatch Interface를 통한 친구상태 체크하기

#import "progid:NateOn.NateMessengerApi.1" no_namespace
void CAutoTestDlg::OnBnClickedButton1()
{
 // TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.

//  uuid(A02AC169-B150-43DE-8BD4-109B9DE6B34B),
//
//  INateOnApiAtx
//
//  dispinterface INateMessengerApi
//
//  [id(0x0000000c), helpstring("method GetMyId")]
//  BSTR GetMyId();
 
 INateMessengerApiPtr m_pNate;

 m_pNate = INateMessengerApiPtr(__uuidof(NateMessengerApi));

 BSTR pID = m_pNate->GetMyId();

 TCHAR szFinal[255];
 // direct conversion from BSTR to LPCTSTR only works
 // in Unicode
 _stprintf(szFinal, _T("%s"), (LPCTSTR)pID);
 AfxMessageBox(szFinal);

 CString str;

VARIANT_BOOL bOnline = m_pNate->IsBuddyOnline("dlsdoㅌㅌㅌ@nate.com");
 if ( VARIANT_TRUE  == bOnline )
  str.Format(L"true");
 else
  str.Format(L"false");

 AfxMessageBox(str);


COM 공부하다가 뻘짓 -_-;;;

OLE View로 타입라이브러리 보다가 '참 많은 놈들이 COM으로 짰구나' 생각하다

아니 네이트~~ 이러면서 그냥 테스트 해본거..

물론 ATL은 필수!
,
TOTAL TODAY