Поделиться через


IDebugProgramNode2::GetHostName

Возвращает имя процесса размещения программы.

HRESULT GetHostName ( 
   GETHOSTNAME_TYPE dwHostNameType,
   BSTR*            pbstrHostName
);
int GetHostName ( 
   enum_GETHOSTNAME_TYPE dwHostNameType,
   out string            pbstrHostName
);

Параметры

  • dwHostNameType
    [in] значение из GETHOSTNAME_TYPE перечисление, указывающее тип имени для возврата.

  • pbstrHostName
    [out] возвращает имя ведущего процесса.

Возвращаемое значение

В случае успеха возвращает S_OK; в противном случае возвращает код ошибки.

Пример

В следующем примере показано, как реализовать этот метод для простого CProgram объект, предоставляющий IDebugProgramNode2 интерфейс. Этот пример не учитывает dwHostNameType параметр и возвращает только имя программы, как берется из базового имени пути к файлу модуля.

HRESULT CProgram::GetHostName(DWORD dwHostNameType, BSTR* pbstrHostName) {  
   // Check for valid argument.  
   if (pbstrHostName)  
   {  
      char szModule[_MAX_PATH];  
  
      // Attempt to assign to szModule the path for the file used
      // to create the calling process.  
      if (GetModuleFileName(NULL, szModule, sizeof (szModule)))  
      {  
         // If successful then declare several char arrays  
         char  szDrive[_MAX_DRIVE];  
         char  szDir[_MAX_DIR];  
         char  szName[_MAX_FNAME];  
         char  szExt[_MAX_EXT];  
         char  szFilename[_MAX_FNAME + _MAX_EXT];  
         WCHAR wszFilename[_MAX_FNAME + _MAX_EXT];  
  
         // Break the szModule path name into components.  
         _splitpath(szModule, szDrive, szDir, szName, szExt);  
  
         // Copy the base file name szName into szFilename.  
         lstrcpy(szFilename, szName);  
         // Append the field extension szExt into szFilename.  
         lstrcat(szFilename, szExt);  
  
         // Convert the szFilename sequence of multibyte characters  
         // to the wszFilename sequence of wide characters.  
         mbstowcs(wszFilename, szFilename, sizeof (wszFilename) / 2);  
  
         // Assign the wszFilename to the value at *pbstrHostName.  
         *pbstrHostName = SysAllocString(wszFilename);  
  
          return S_OK;  
      }  
   }  
  
    return E_INVALIDARG;  
}  

См. также

Ссылки

IDebugProgramNode2

GETHOSTNAME_TYPE

IDebugProgramNode2