PRB: Contents of the HTML Help API File (Hherror.h) Are Missing (297768)
The information in this article applies to:
- Microsoft HTML Help 1.3
- Microsoft HTML Help 1.31
- Microsoft HTML Help 1.32
This article was previously published under Q297768 SYMPTOMS
If you use HH_GET_LAST_ERROR command to get error information about your Hypertext Markup Language (HTML) application programming interface (API) calls as shown in the code sample in the "More Information" section, you find that the header file (Hherror.h), which includes the contents and the definition of the used type, is missing from the HTML Help Workshop.
MORE INFORMATIONSteps to Reproduce the Behavior
This code sample returns information about the last error that occurred in the HTML Help ActiveX control (Hhctrl.ocx):
USES_CONVERSION; // For Unicode to ANSI string conversion<BR/>
HH_LAST_ERROR lasterror ;
HWND hwnd = HtmlHelp(
hOwner,
NULL,
HH_GET_LAST_ERROR,
reinterpret_cast<DWORD>(&lasterror)) ;
// Make sure that HH_GET_LAST_ERROR succeeded.
if (hwnd != 0)
{
// Only report an error if you found one:
if (FAILED(lasterror.hr))
{
// Is there a text message to display...
if (lasterror.description)
{
// Convert the String to ANSI
TCHAR* pDesc = OLE2T(lasterror.description) ;
::SysFreeString(lasterror.description) ;
// Display
MessageBox(hOwner, pDesc,
"Help Error", MB_OK) ;
}
}
}
The following code sample shows the contents of the missing Hherror.h header file:
/****************************************************************************
* *
* Hherror.h --- HTML Help API errors *
* *
* Copyright (c) 1996-1997, Microsoft Corp. All rights reserved.
*
* *
***************************************************************************
*/
#if _MSC_VER > 1000
#pragma once
#endif
#ifndef __HHERROR_H__
#define __HHERROR_H__
#ifdef __cplusplus
extern "C" {
#endif // __cplusplus
// HH_LAST_ERROR Command Related structures and constants
typedef struct tagHH_LAST_ERROR
{
int cbStruct ;
HRESULT hr ; // The last error code.
BSTR description ; // Unicode description string.
} HH_LAST_ERROR ;
// Error codes
#define HH_E_FILENOTFOUND MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x0201L ) // %1 could not be found.
#define HH_E_TOPICDOESNOTEXIST MAKE_HRESULT( SEVERITY_ERROR
, FACILITY_ITF, 0x0202L ) // The requested topic does not exist.
#define HH_E_INVALIDHELPFILE MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x0203L ) // %1 is not a valid help file.
#define HH_E_NOCONTEXTIDS MAKE_HRESULT( SEVERITY_ERROR,
FACILITY_ITF, 0x020AL ) // Help file does not contain context ids.
#define HH_E_CONTEXTIDDOESNTEXIT MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x020BL ) // The context id does not exist.
// 0x0300 - 0x03FF reserved for keywords
#define HH_E_KEYWORD_NOT_FOUND MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x0300L ) // no hits found.
#define HH_E_KEYWORD_IS_PLACEHOLDER MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x0301L ) // keyword is a placeholder or a "runaway" see also.
#define HH_E_KEYWORD_NOT_IN_SUBSET MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x0302L ) // no hits found because of subset exclusion.
#define HH_E_KEYWORD_NOT_IN_INFOTYPE MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x0303L ) // no hits found because of infotype exclusion.
#define HH_E_KEYWORD_EXCLUDED MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x0304L ) // no hits found because of infotype and subset
exclusion.
#define HH_E_KEYWORD_NOT_SUPPORTED MAKE_HRESULT( SEVERITY_ERROR, FACILITY_ITF, 0x0305L ) // no hits found because of keywords not being supported in this mode.
#ifdef __cplusplus
}
#endif // __cplusplus
#endif
Modification Type: | Major | Last Reviewed: | 5/7/2002 |
---|
Keywords: | kbAPI kbprb KB297768 |
---|
|