Bagikan melalui


Fungsi RoTransformError (roerrorapi.h)

Melaporkan kesalahan yang dimodifikasi dan string informatif ke debugger terlampir.

Sintaks

BOOL RoTransformError(
  [in] HRESULT oldError,
  [in] HRESULT newError,
  [in] HSTRING message
);

Parameter

[in] oldError

Jenis: HRESULT

Kode kesalahan asli yang terkait dengan kondisi kesalahan.

[in] newError

Jenis: HRESULT

Kode kesalahan yang berbeda untuk dikaitkan dengan kondisi kesalahan. Jika oldError dan newError sama, atau keduanya adalah kode keberhasilan, seperti S_OK, fungsi tidak berpengaruh dan mengembalikan FALSE.

[in] message

Jenis: HSTRING

String informatif untuk membantu pengembang memperbaiki kondisi kesalahan yang dilaporkan. Panjang maksimum adalah 512 karakter, termasuk karakter null berikutnya; untai (karakter) yang lebih panjang dipotok.

Jika string kosong, fungsi berhasil tetapi tidak ada informasi kesalahan yang dilaporkan. Disarankan agar Anda selalu memberikan string informatif.

Jika pesanNULL, fungsi berhasil dan melaporkan string generik di Winerror.h jika tersedia atau string generik yang terkait dengan E_FAIL.

Meskipun string pesan adalah HSTRING, fungsi RoTransformError tidak mendukung karakter null yang disematkan, jadi hanya karakter sebelum null pertama yang dilaporkan.

Nilai kembali

Jenis: BOOL

Menampilkan kode Deskripsi
TRUE
Pesan kesalahan berhasil dilaporkan.
FALSE
pesanadalah NULL atau menunjuk ke string kosong, atau oldError dan newError sama, atau keduanya adalah kode keberhasilan.

Keterangan

Gunakan fungsi RoTransformError untuk mengganti kode kesalahan kustom untuk kondisi kesalahan yang ada. Misalnya, jika kondisi kesalahan saat ini E_FAIL, Anda dapat mengganti kode kesalahan yang lebih spesifik, seperti E_FILENOTFOUND, dan melaporkan kesalahan yang diubah ke debugger terlampir.

Perilaku fungsi RoTransformError jika tidak sama dengan fungsi RoTransformErrorW .

Jika bendera UseSetErrorInfo diatur dengan memanggil fungsi RoSetErrorReportingFlags , dan utas panggilan telah diinisialisasi di COM, fungsi membuat objek kesalahan yang sesuai yang mendukung IRestrictedErrorInfo dan mengaitkannya dengan saluran COM dengan memanggil SetErrorInfo. Jika utas belum diinisialisasi ke COM, panggilan akan tetap berhasil tanpa kesalahan, tetapi kesalahan tidak akan dikaitkan dengan saluran COM.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 8 [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2012 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header roerrorapi.h

Lihat juga

RO_ERROR_REPORTING_FLAGS

RoGetErrorReportingFlags

RoOriginateError

RoSetErrorReportingFlags

RoTransformErrorW