値のリストはどこにありEDOMParseError.ErrorCodeますか?
Delphi ソースまたは MSDN で見つけることができません。
たとえば、XMLDocument.FileName間違った URL に設定すると、
Error code: -2146697210
Reason: System error: -2146697210
このコードはどこで定義されていますか?
値のリストはどこにありEDOMParseError.ErrorCodeますか?
Delphi ソースまたは MSDN で見つけることができません。
たとえば、XMLDocument.FileName間違った URL に設定すると、
Error code: -2146697210
Reason: System error: -2146697210
このコードはどこで定義されていますか?
MSXML を の DOM プロバイダとして使用する場合TXMLDocument、EDOMParseError.ErrorCode値は COMHRESULT値です (MSXML は COM オブジェクトとして実装されます)。HRESULTすべての可能な値を文書化した単一の情報源はありません。さまざまなモジュールで独自のカスタムHRESULT値を定義できます。
この場合、-2146697210 (hex 0x800C0006) はINET_E_OBJECT_NOT_FOUND(オブジェクトが見つかりませんでした):
#define INET_E_OBJECT_NOT_FOUND _HRESULT_TYPEDEF_(0x800C0006L)
これは、重大度が、ファシリティが、エラー コードが 6のマクロをHRESULT介して定義された に変換されます。MAKE_HRESULT()SEVERITY_ERRORFACILITY_INTERNET
#define INET_E_OBJECT_NOT_FOUND MAKE_HRESULT(SEVERITY_ERROR, FACILITY_INTERNET, 6)
この特定HESULTの値は、URL モニカー エラー コードに記載されています。機能を持つすべてのHRESULT値FACILITY_INTERNETは、UrlMon モジュールを含む WinInet ライブラリに属します。MSXML は、内部的に WinInet を使用してリモート コンテンツをダウンロードします。
理由で述べたように、このエラーはシステムに起因します。
SysErrorMessage(ErrorCode)
やりたいことをやればいい。
エラーがシステムから発生した場合にのみ、SysErrorMessage を呼び出します。しかし今、あなたはこれを知る方法を理解する必要があります. このような理由を確認することが可能です
if reason.StartsWith('System Error') then
errorMessage := SysErrorMessage(errorCode);
でも、このままではダメそうです(Windowsの言語設定にもよるかな…)