IDXGIOutputDuplication::GetFramePointerShape method (dxgi1_2.h)

Mendapatkan informasi tentang bentuk penunjuk baru untuk bingkai desktop saat ini.

Sintaks

HRESULT GetFramePointerShape(
  [in]  UINT                            PointerShapeBufferSize,
  [out] void                            *pPointerShapeBuffer,
  [out] UINT                            *pPointerShapeBufferSizeRequired,
  [out] DXGI_OUTDUPL_POINTER_SHAPE_INFO *pPointerShapeInfo
);

Parameter

[in] PointerShapeBufferSize

Ukuran dalam byte buffer yang diteruskan pemanggil ke parameter pPointerShapeBuffer .

[out] pPointerShapeBuffer

Penunjuk ke buffer tempat GetFramePointerShape menyalin dan mengembalikan data piksel untuk bentuk penunjuk baru.

[out] pPointerShapeBufferSizeRequired

Penunjuk ke variabel yang menerima jumlah byte yang dibutuhkan GetFramePointerShape untuk menyimpan data piksel bentuk penunjuk baru di buffer di pPointerShapeBuffer.

Untuk informasi selengkapnya tentang mengembalikan ukuran buffer yang diperlukan, lihat Keterangan.

[out] pPointerShapeInfo

Penunjuk ke struktur DXGI_OUTDUPL_POINTER_SHAPE_INFO yang menerima informasi bentuk penunjuk.

Menampilkan nilai

GetFramePointerShape mengembalikan:

  • S_OK jika berhasil mengambil informasi tentang bentuk penunjuk baru.
  • DXGI_ERROR_ACCESS_LOST jika antarmuka duplikasi desktop tidak valid. Antarmuka duplikasi desktop biasanya menjadi tidak valid ketika jenis gambar yang berbeda ditampilkan di desktop. Contoh situasi ini adalah:
    • Sakelar desktop
    • Perubahan mode
    • Beralih dari DWM aktif, DWM nonaktif, atau aplikasi layar penuh lainnya
    Dalam situasi ini, aplikasi harus merilis antarmuka IDXGIOutputDuplication dan membuat IDXGIOutputDuplication baru untuk konten baru.
  • DXGI_ERROR_MORE_DATA jika buffer yang disediakan aplikasi panggilan tidak cukup besar.
  • DXGI_ERROR_INVALID_CALL jika aplikasi bernama GetFramePointerShape tanpa memiliki gambar desktop.
  • E_INVALIDARG jika salah satu parameter untuk GetFramePointerShape salah; misalnya, jika pPointerShapeInfo adalah NULL.
  • Mungkin kode kesalahan lain yang dijelaskan dalam topik DXGI_ERROR .

Keterangan

GetFramePointerShape menyimpan nilai ukuran dalam variabel di pPointerShapeBufferSizeRequired. Nilai ini menentukan jumlah byte yang dibutuhkan pPointerShapeBufferSizeRequired untuk menyimpan data piksel bentuk penunjuk baru. Anda dapat menggunakan nilai dalam situasi berikut untuk menentukan jumlah memori yang akan dialokasikan untuk buffer mendatang yang Anda berikan ke pPointerShapeBuffer:

  • GetFramePointerShape gagal dengan DXGI_ERROR_MORE_DATA karena buffer tidak cukup besar.
  • GetFramePointerShape memasok buffer yang lebih besar dari yang diperlukan. Nilai ukuran yang dikembalikan di pPointerShapeBufferSizeRequired memberi tahu pemanggil berapa banyak ruang buffer yang benar-benar digunakan dibandingkan dengan berapa banyak ruang buffer yang dialokasikan pemanggil dan ditentukan dalam parameter PointerShapeBufferSize .
Parameter pPointerShapeInfo menjelaskan bentuk penunjuk baru.

Persyaratan

   
Klien minimum yang didukung Windows 8 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2012 [hanya aplikasi desktop]
Target Platform Windows
Header dxgi1_2.h
Pustaka Dxgi.lib

Lihat juga

IDXGIOutputDuplication