Tidak dapat mengakses perangkat USB di dalam Aplikasi Windows Store

Oke, pertama-tama saya akan menunjukkan bahwa saya benar-benar baru dalam Pengembangan Aplikasi Windows, dan itu bagus, karena saya mencoba mengembangkan Aplikasi Windows Store untuk PC untuk menggunakan Pemindai PrimeSense yang terhubung melalui USB. Saya telah mengajukan pertanyaan yang lebih spesifik tentang ini di sini .

Kali ini saya punya pertanyaan yang lebih umum, yang lebih terkait dengan pengembangan aplikasi Windows Store. Saya menggunakan VS2013 Express dan mengkompilasi untuk Win32.

Ketika saya mengkompilasi aplikasi saya untuk VS2012 dan menjalankannya sebagai file yang dapat dieksekusi, saya dapat terhubung ke pemindai dengan sempurna. Tapi saya tidak bisa melakukan hal yang sama dengan VS2013 dan menjalankannya sebagai aplikasi Store.

Saya tahu perangkat terhubung dan driver diperbarui dan semua file dll ditempatkan di direktori Widnows System 32. Saya juga telah menambahkan semua Kemampuan ke Manifes Aplikasi dan juga menambahkan Kemampuan Perangkat berikut

 <m2:DeviceCapability Name="usb">
  <!--OSRFX2 Device-->
  <m2:Device Id="vidpid:1d27 0609">
    <m2:Function Type="classId:ff * *" />
    <m2:Function Type="name:vendorSpecific" />
  </m2:Device>
</m2:DeviceCapability>

Video dan pidnya, jelas cocok dengan kode perangkat yang sesuai.

Salah satu kesalahan yang saya terima ketika mencoba menyambung ke pemindai menggunakan OpenNI adalah:

Could not open to "\\?\usb#vid_1d27&pid_0609&mi_00#7&1601586a&0&0000#{c3b5f022-5a42-1980-1909-ea72095601b1}" USB Device not found

Kesalahan ini cukup membuat frustrasi karena saya tahu perangkat sudah terhubung. Jadi saya cenderung berpikir bahwa ada beberapa tingkat kekhususan os di sisi Aplikasi Windows Store dalam game yang tidak memungkinkan saya untuk terhubung ke perangkat. Seperti yang saya katakan, saya mengkompilasi untuk Win32.

Apakah ada kemungkinan driver tidak berfungsi untuk Aplikasi Windows Store. Apakah ada beberapa hal tambahan yang harus saya lakukan di dalam logika Aplikasi Windows Store yang tidak saya lakukan dan diperlukan untuk menghubungkan perangkat USB? Saya minta maaf, tapi saya benar-benar baru dalam pengembangan Aplikasi Windows Store.

Terima kasih.


person MobileCushion    schedule 23.06.2014    source sumber
comment
Harap dapatkah Anda mengonfirmasi, bahwa judul Anda meminta aplikasi toko Windows tetapi di tengah-tengah Anda mengatakan aplikasi desktop VS2013 tidak akan menemukan pemindai. Saya sedikit bingung. Apakah maksud Anda Aplikasi Toko VS2013 tidak akan menemukan pemindai?   -  person Nasenbaer    schedule 30.06.2014
comment
Ya, maksud saya Aplikasi Toko VS2013. Terima kasih telah menunjukkan hal itu.   -  person MobileCushion    schedule 02.07.2014


Jawaban (1)


Anda tidak dapat melakukan itu dari aplikasi metro.

Anda biasanya membuat pegangan pada perangkat usb tersebut dengan memanggil CreateFile dengan jalur pengelola objek sebagai file untuk 'membuat'. CreateFile adalah tidak diizinkan di aplikasi metro - "aplikasi desktop saja" - dan 'penggantinya', CreateFile2, secara khusus tidak mengizinkan pembukaan objek pengelola objek.

Selain itu, dokumentasi untuk CreateFile2 menyatakan bahwa dalam aplikasi metro fungsi ini hanya dapat membuka file dan direktori (dan bukan hal-hal seperti pipa, slot surat, konsol, dll.).

Lihat juga postingan ini di social.msdn

Kecuali saya melewatkan sesuatu, saya rasa ini tidak mungkin.

person antiduh    schedule 02.07.2014
comment
Oke, saya kira hal itu tidak mungkin dilakukan saat ini... Semoga ada perubahan di masa mendatang. terima kasih - person MobileCushion; 03.07.2014
comment
@MobileCushion - Sayangnya, menurut saya hal ini tidak dijadwalkan untuk berubah. Model Microsoft dengan aplikasi metro/windows store adalah model yang lebih terbatas dan 'lebih aman'. Kemungkinan ada satu solusi - jika Anda diizinkan untuk menginstal program desktop bersama dengan aplikasi metro Anda, Anda dapat meminta program desktop menangani pemindahan data ke perangkat usb dari aplikasi metro Anda. Tapi saya tidak tahu bagaimana Anda mendistribusikannya. - person antiduh; 03.07.2014