Bagikan melalui


RpcErrorGetNextRecord (rpcasync.h)

Fungsi RpcErrorGetNextRecord mengambil catatan informasi kesalahan yang diperluas berikutnya untuk handel enumerasi.

Sintaks

RPC_STATUS RpcErrorGetNextRecord(
  [in]  RPC_ERROR_ENUM_HANDLE   *EnumHandle,
  [in]  BOOL                    CopyStrings,
  [out] RPC_EXTENDED_ERROR_INFO *ErrorInfo
);

Parameter

[in] EnumHandle

Arahkan ke handel enumerasi, dalam bentuk struktur RPC_ERROR_ENUM_HANDLE . Struktur harus dialokasikan oleh pemanggil, dan tidak dapat dikosongkan sampai operasi selesai. Semua anggota diabaikan pada input.

[in] CopyStrings

Menentukan apakah bidang string di ErrorInfo disalin ke timbunan sistem default, di mana kepemilikan titik buffer tersebut ditransfer ke pemanggil.

TRUE menunjukkan string akan disalin ke timbunan sistem.

FALSE menunjukkan string dalam ErrorInfo menunjuk ke struktur data RPC internal; pemanggil tidak dapat membebaskan atau menulis kepada mereka, dan mereka menjadi tidak valid setelah fungsi RpcErrorEndEnumeration dipanggil.

[out] ErrorInfo

Arahkan ke struktur RPC_EXTENDED_ERROR_INFO . Lihat Keterangan.

Nilai kembali

Jika CopyStrings salah, panggilan fungsi tidak dapat gagal kecuali parameternya tidak valid. Ketika rekaman kesalahan yang diperluas terakhir diambil, RpcErrorGetNextRecord mengembalikan RPC_S_OK. Setiap panggilan berikutnya mengembalikan RPC_S_ENTRY_NOT_FOUND.

Setelah kesalahan apa pun, posisi enumerasi tidak dimajukan.

Catatan Untuk daftar kode kesalahan yang valid, lihat Nilai Pengembalian RPC.
 

Keterangan

Setelah input, bidang berikut harus diatur di ErrorInfo:

  • Versi harus diatur ke RPC_EEINFO_VERSION.
  • NumberOfParameters harus diatur ke nilai antara nol dan MaxNumberOfEEInfoParams. Penelepon bebas menyediakan ruang untuk sejumlah parameter. Jika jumlah parameter yang disediakan oleh pemanggil lebih kecil dari jumlah parameter dalam catatan kesalahan yang diperluas, RPC_S_BUFFER_TOO_SMALL dikembalikan.
  • Bendera harus nol, atau EEInfoUseFileTime harus ditentukan. Jika Bendera nol, anggota SystemTime dari u union digunakan. Jika EEInfoUseFileTime ditentukan, anggota FileTime dari u union digunakan.
Bidang lain dari ErrorInfo diabaikan pada input.

Setelah output, bidang di ErrorInfo diisi sebagai berikut:

  • Versi tidak berubah.
  • ComputerName adalah NULL jika tidak ada nama komputer dalam rekaman, atau string Unicode jika nama komputer memang ada di rekaman informasi kesalahan yang diperluas. Jika NULL, rekaman terakhir dengan nama komputer dapat diasumsikan, namun, nama komputer mungkin telah dihilangkan untuk memori yang tidak memadai. ComputerName adalah nama DNS yang tidak memenuhi syarat.
  • ProcessID adalah PID dari proses asal rekaman.
  • SystemTime atau FileTime adalah waktu rekaman dibuat, dinyatakan dalam UCT, untuk mesin tempat rekaman dibuat. FileTime atau SystemTime valid, berdasarkan apakah EEInfoUseFileTime digunakan.
  • GeneratingComponent adalah kode untuk komponen pembuatan.
  • Status adalah kode status untuk rekaman.
  • DetectionLocation adalah kode untuk lokasi deteksi.
  • Bendera menentukan apakah rekaman hilang. Jika satu atau beberapa rekaman hilang setelah rekaman saat ini hilang, EEInfoNextRecordsMissing diatur. Jika satu atau beberapa rekaman sebelum rekaman saat ini hilang, EEInfoPreviousRecordsMissing diatur.
  • NumberOfParameters menentukan jumlah parameter yang sebenarnya. Jika pemanggil menentukan ruang untuk lebih banyak parameter pada input daripada yang ada di rekaman, bidang ini berisi jumlah parameter yang digunakan.
  • Parameter adalah parameter aktual, disediakan sebagai array struktur RPC_EE_INFO_PARAM dengan struktur NumberOfParameters .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2003 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header rpcasync.h (termasuk Rpc.h)
Pustaka Rpcrt4.lib
DLL Rpcrt4.dll

Lihat juga

Mendapatkan Informasi Kesalahan RPC yang Diperluas

RPC_EE_INFO_PARAM

RPC_ERROR_ENUM_HANDLE

RPC_EXTENDED_ERROR_INFO

RpcErrorEndEnumeration

RpcErrorStartEnumeration