IDiscFormat2Data::Metode tulis (imapi2.h)

Menulis aliran data ke perangkat.

Catatan Agar berhasil menulis, ukuran aliran yang diteruskan harus kelipatan dari ukuran sektor, 2048. Ini termasuk operasi yang menggunakan aliran yang terkait dengan gambar .iso yang tidak dibuat oleh IMAPI.

 

Sintaks

HRESULT Write(
  [in] IStream *data
);

Parameter

[in] data

Antarmuka IStream dari aliran data untuk menulis.

Menampilkan nilai

S_OK dikembalikan pada keberhasilan, tetapi kode keberhasilan lainnya dapat dikembalikan sebagai hasil dari implementasi. Kode kesalahan berikut biasanya dikembalikan pada kegagalan operasi, tetapi tidak mewakili satu-satunya nilai kesalahan yang mungkin:

Menampilkan kode Deskripsi
E_IMAPI_RECORDER_COMMAND_TIMEOUT
Perangkat gagal menerima perintah dalam periode waktu habis. Ini mungkin disebabkan oleh perangkat yang telah memasuki status tidak konsisten, atau nilai batas waktu untuk perintah mungkin perlu ditingkatkan.

Nilai: 0xC0AA020D

E_IMAPI_RECORDER_INVALID_RESPONSE_FROM_DEVICE
Perangkat melaporkan data yang tidak terduga atau tidak valid untuk perintah.

Nilai: 0xC0AA02FF

E_IMAPI_RECORDER_MEDIA_UPSIDE_DOWN
Media disisipkan terbalik.

Nilai: 0xC0AA0204

E_IMAPI_RECORDER_MEDIA_BECOMING_READY
Drive melaporkan bahwa itu sedang dalam proses menjadi siap. Silakan coba permintaan lagi nanti.

Nilai: 0xC0AA0205

E_IMAPI_RECORDER_MEDIA_NO_MEDIA
Tidak ada media di perangkat.

Nilai: 0xC0AA0202

E_IMAPI_RECORDER_MEDIA_FORMAT_IN_PROGRESS
Media saat ini sedang diformat. Harap tunggu hingga format selesai sebelum mencoba menggunakan media.

Nilai: 0xC0AA0206

E_IMAPI_RECORDER_MEDIA_BUSY
Drive melaporkan bahwa ia melakukan operasi jangka panjang, seperti menyelesaikan penulisan. Drive mungkin tidak dapat digunakan untuk jangka waktu yang lama.

Nilai: 0xC0AA0207

E_IMAPI_LOSS_OF_STREAMING
Penulisan gagal karena drive tidak menerima data dengan cukup cepat untuk melanjutkan penulisan. Memindahkan data sumber ke komputer lokal, mengurangi kecepatan tulis, atau mengaktifkan pengaturan "buffer underrun free" dapat mengatasi masalah ini.

Nilai: 0xC0AA0300

E_IMAPI_RECORDER_MEDIA_INCOMPATIBLE
Media tidak kompatibel atau format fisik tak dikenal.

Nilai: 0xC0AA0203

E_IMAPI_RECORDER_DVD_STRUCTURE_NOT_PRESENT
Struktur DVD tidak ada. Ini mungkin disebabkan oleh drive/medium yang tidak kompatibel yang digunakan.

Nilai: 0xC0AA020E

E_IMAPI_RECORDER_NO_SUCH_MODE_PAGE
Perangkat melaporkan bahwa halaman mode yang diminta (dan jenis) tidak ada.

Nilai: 0xC0AA0201

E_IMAPI_RECORDER_INVALID_MODE_PARAMETERS
Drive melaporkan bahwa kombinasi parameter yang disediakan di halaman mode untuk perintah MODE SELECT tidak didukung.

Nilai: 0xC0AA0208

E_IMAPI_RECORDER_MEDIA_WRITE_PROTECTED
Kandar melaporkan bahwa media dilindungi terhadap penulisan.

Nilai: 0xC0AA0209

E_IMAPI_RECORDER_MEDIA_SPEED_MISMATCH
Kecepatan media tidak kompatibel dengan perangkat. Ini mungkin disebabkan oleh penggunaan media kecepatan yang lebih tinggi atau lebih rendah daripada rentang kecepatan yang didukung oleh perangkat.

Nilai: 0xC0AA020F

HRESULT_FROM_WIN32(ERROR_INVALID_HANDLE)
Handel yang ditentukan tidak valid.

Nilai: 6

HRESULT_FROM_WIN32(ERROR_DEV_NOT_EXIST)
Sumber daya atau perangkat jaringan yang ditentukan tidak lagi tersedia.

Nilai: 55

E_IMAPI_RECORDER_LOCKED
Perangkat yang terkait dengan perekam ini selama operasi terakhir telah dikunci secara eksklusif, menyebabkan operasi ini gagal.

Nilai: 0xC0AA0210

E_IMAPI_UNEXPECTED_RESPONSE_FROM_DEVICE
Penulisan gagal karena drive mengembalikan informasi kesalahan yang tidak dapat dipulihkan.

Nilai: 0xC0AA0301

E_IMAPI_RECORDER_REQUIRED
Permintaan ini mensyaratkan agar perekam diska saat ini dipilih.

Nilai: 0xC0AA0003

S_IMAPI_ROTATIONADJUSTED
Jenis rotasi yang diminta tidak didukung oleh drive dan jenis rotasi disesuaikan.

Nilai: 0x00AA0005

S_IMAPI_SPEEDADJUSTED
Kecepatan tulis yang diminta tidak didukung oleh drive dan kecepatan disesuaikan.

Nilai: 0x00AA0004

S_IMAPI_BOTHADJUSTED
Kecepatan tulis dan jenis rotasi yang diminta tidak didukung oleh drive dan keduanya disesuaikan.

Nilai: 0x00AA0006

E_IMAPI_DF2DATA_RECORDER_NOT_SUPPORTED
Perangkat ini tidak mendukung operasi yang diperlukan oleh format diska ini.

Nilai: 0xC0AA0407

E_IMAPI_REQUEST_CANCELLED
Permintaan itu dibatalkan.

Nilai: 0xC0AA0002

E_IMAPI_DF2DATA_WRITE_IN_PROGRESS
Saat ini ada operasi tulis yang sedang berlangsung.

Nilai: 0xC0AA0400

E_IMAPI_DF2DATA_STREAM_NOT_SUPPORTED
Ukuran objek IStream yang disediakan tidak valid. Ukurannya harus kelipatan dari ukuran sektor, 2048.

Nilai: 0xC0AA0403

E_IMAPI_DF2DATA_MEDIA_IS_NOT_SUPPORTED
Tipe media saat ini tidak didukung.

Nilai: (HRESULT)0xC0AA0406

E_INVALIDARG
Satu atau beberapa argumen tidak valid.

Nilai: 0x80070057

E_POINTER
Pointer tidak valid.

Nilai: 0x80004003

E_FAIL
Kegagalan yang tidak ditentukan.

Nilai: 0x80004005

E_OUTOFMEMORY
Gagal mengalokasikan memori yang diperlukan.

Nilai: 0x8007000E

E_NOTIMPL
Tidak diterapkan.

Nilai: 0x80004001

Keterangan

Sebelum memanggil metode ini, Anda harus memanggil metode berikut:

Anda juga harus mempertimbangkan untuk memanggil metode berikut jika nilai defaultnya tidak sesuai untuk aplikasi Anda: Metode ini sinkron, yang berarti bahwa kontrol tidak dikembalikan sampai IStream yang disediakan direkam ke media. Untuk menentukan kemajuan operasi tulis, Anda harus menerapkan antarmuka DDiscFormat2DataEvents . Untuk contoh yang menunjukkan cara mengimplementasikan penanganan aktivitas dalam skrip, lihat Memantau Kemajuan Dengan Peristiwa.

Pada disk yang direkam secara berurutan, IStream yang disediakan dicatat sebagai sesi baru. Pada disk yang dapat ditulis ulang, IStream yang disediakan selalu direkam mulai dari sektor 0, tetapi objek yang menyediakan antarmuka IStream juga dapat menyediakan antarmuka IBlockRangeList yang mencantumkan sektor yang perlu direkam. Antarmuka IBlockRangeList digunakan untuk menghindari penulisan ulang sektor yang tidak berubah dalam skenario multisesi. Jika objek yang menyediakan IStream tidak menyediakan IBlockRangeList, diasumsikan bahwa seluruh IStream perlu direkam.

Persyaratan

   
Klien minimum yang didukung Windows Vista, Windows XP dengan SP2 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header imapi2.h

Lihat juga

DDiscFormat2DataEvents

IDiscFormat2Data

IDiscFormat2Data::CancelWrite