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否则,返回错误代码。

示例

下面的示例演示如何执行显示 IDebugProgramNode2 接口的简单 CProgram 对象的方法。 此示例忽略 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