Metode IDirectInputJoyConfig8::SetTypeInfo (dinputd.h)

Metode IDirectInputJoyConfig8::SetTypeInfo membuat jenis joystick baru atau menentukan ulang informasi tentang jenis joystick yang ada.

Sintaks

HRESULT SetTypeInfo(
  LPCWSTR          unnamedParam1,
  LPCDIJOYTYPEINFO unnamedParam2,
  DWORD            unnamedParam3,
  LPWSTR           unnamedParam4
);

Parameter

unnamedParam1

Menunjuk ke nama jenis. Nama tipe tidak boleh melebihi MAX_JOYSTRING karakter, termasuk karakter null yang mengakhiri. Jika nama jenis belum ada, maka nama tersebut dibuat. Anda tidak dapat mengubah informasi tipe untuk tipe yang telah ditentukan sebelumnya. Nama tidak dapat dimulai dengan karakter "#". Jenis yang dimulai dengan "#" dicadangkan oleh DirectInput.

unnamedParam2

Menunjuk ke struktur yang menerima informasi tentang jenis joystick.

unnamedParam3

Menentukan bagian dari struktur DIJOYTYPEINFO yang ditunjukkan oleh pjti yang berisi nilai yang akan ditetapkan.

DITC_REGHWSETTINGS

Menunjukkan bahwa pengaturan perangkat keras registri untuk joystick valid.

DITC_CLSIDCONFIG

Menunjukkan bahwa konfigurasi joystick CLSID valid. Jika nilainya adalah semua nol, maka tidak ada konfigurasi kustom untuk jenis joystick ini.

DITC_DISPLAYNAME

Menunjukkan bahwa nama tampilan untuk jenis joystick valid.

DITC_CALLOUT

Menunjukkan bahwa callout untuk jenis joystick valid.

unnamedParam4

Jika nama jenis adalah jenis OEM yang tidak dalam format VID_xxxx&PID_yyyy, parameter ini akan mengembalikan nama dalam format VID_xxxx&PID_yyyy yang ditetapkan oleh Dinput. Nama VID_xxxx&PID_yyyy ini harus digunakan di bidang DIJOYCONFIG.wszType saat memanggil SetConfig.

Nilai kembali

Mengembalikan DI_OK jika berhasil; jika tidak, mengembalikan salah satu nilai kesalahan COM berikut:

Menampilkan kode Deskripsi
DIERR_NOTACQUIRED
Konfigurasi Joystick belum diperoleh. Anda harus memanggil IDirectInputJoyConfig8::Acquire sebelum Anda dapat memberi tahu aplikasi dan driver perubahan pada konfigurasi joystick.
DIERR_INVALIDPARAM
Satu atau beberapa parameter tidak valid.
DIERR_READONLY
Mencoba mengubah tipe yang telah ditentukan sebelumnya.

Persyaratan

   
Target Platform Desktop
Header dinputd.h (termasuk Dinputd.h)