Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Помогите переложить код С++ на С#


Автор: Гость Po 17.11.2003, 11:11
Помогите, плиз, переписать С++ код на C#.
Итак, в rapi.h определен IRAPIStream.
Вот код моего приложения, который "дергает" этот IRAPIStream:
Код

int WINAPI WinMain(...)
{
  TCHAR szTmp[ cchSzMax ];
  WCHAR szFn[  cchSzMax ];
  WCHAR szCmd[ cchSzMax ];
  LPTSTR szOut = NULL;
  BOOL  fStream = FALSE;
  int   iFn = 0;

  CeRapiInit();

  wcscpy( szFn, c_szFnKillProc );
  wcscpy( szCmd, c_wszKillProc );
  cbInput = ( wcslen( c_wszKillProc ) + 1 ) * 2;

  IRAPIStream *pStream = NULL;

  HRESULT  hr = CeRapiInvoke( c_szDllName, szFn,  cbInput, ( BYTE * ) szCmd,  &cbOut, ( BYTE ** ) &szOut, fStream ? &pStream : NULL, NULL );
  if ( pStream )
  {
...
     if ( SUCCEEDED( hr = pStream->Read( &cbOut, sizeof ( cbOut ), &cbRead ) ) )
     {
          BYTE * pBuf = ( BYTE * ) new BYTE[ cbOut + 2 ];
          if ( SUCCEEDED( hr = pStream->Read( pBuf, cbOut , &cbRead ) ) )
          {
              ...
          }
          else
              wsprintf( szTmp, "Return = 0x%X, ( Unknown stream )", hr );
     }
     pStream->Release();
....

Как мне в "увидеть" этот интерфейс и использовать его.
Спасибо.

Автор: AntonSaburov 17.11.2003, 13:30
Если это стандартный COM, то через Add Reference.
Т.е. в окне Solution Explorer на проекте щелкаем правой кнопкой и выбираем Add Reference. А в окне уже выбираем COM и там ищем свой интерфейс.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)