WPF dan DWM untuk mengarahkan output melalui jaringan

Saya sedang menulis aplikasi WPF besar (besar seperti pada resolusi layar), berjalan dengan beberapa kontrol dasar, pemutaran video dasar, dll...

Saya telah meneliti cara menyiarkan/mengarahkan jendela WPF ke monitor lain melalui jaringan lokal. Intinya, mencoba menampilkan wilayah tertentu dari aplikasi WPF pada monitor terpisah secara real time.

Saya telah membaca tentang DWM (yang saya tidak punya pengalaman dengannya) dan tampaknya API thumbnail akan menjadi cara yang baik untuk melakukan ini. Cukup siarkan segmen (katakanlah 9, segmen 300x300) melalui jaringan melalui semacam siaran jaringan multi-cast, yang didengarkan dan dirender oleh PC klien...

Bisakah ini dilakukan? Bagaimana cara melakukan hal seperti ini?

EDIT

Saya telah membaca lebih lanjut tentang DWM, dan sepertinya hal ini dapat dicapai, tautan ini menjelaskan bahwa:

Anda dapat memiliki rendering adegan 3D yang terdistribusi dan menjalankannya dengan akselerasi perangkat keras penuh pada sejumlah mesin klien. Arsitektur ini memungkinkan DWM untuk memberikan dukungan kelas satu untuk skenario Remote Desktop

Saya hanya tidak tahu harus mulai dari mana untuk melihat perkembangan seperti ini... ada ide?


person Mark    schedule 11.10.2010    source sumber


Jawaban (1)


Bisakah Anda melakukan ini menggunakan API thumbnail DWM? mungkin tidak, API thumbnail sangat terbatas dan tidak memberi Anda akses ke gambar sebenarnya.

Bisakah ini dilakukan secara umum? Ya, ada banyak program yang mentransfer tangkapan layar melalui jaringan (seperti Remote Desktop dan VNC).

Namun apakah ini cara terbaik untuk melakukan ini?

Anda memerlukan program untuk menyiarkan gambar layar dan program lain untuk menggambarnya - jadi mengapa Anda tidak menyiarkan data yang mendasarinya dan melakukan visualisasi di sisi klien?

person Nir    schedule 11.10.2010
comment
Semacam transfer data (seperti WCF) dengan rendering lokal sepertinya merupakan pendekatan yang baik untuk masalah ini. Pada dasarnya masing-masing PC layar terpisah akan bertindak sebagai klien untuk interaksi dengan host, yang memberi Anda fleksibilitas tambahan, seperti mengubah monitor samping sederhana menjadi panel sentuh untuk kontrol tambahan. - person Dan Bryant; 11.10.2010
comment
Tidak perlu ada interaksi apa pun, tetapi akan ada sejumlah besar layar klien... Saya membutuhkannya agar berfungsi dengan lancar, dan fleksibel. Jadi saya hanya memikirkan model klien/server di mana server menyiarkan seluruh frame buffer jaringan (mungkin VNC atau RDP akan berfungsi dengan baik), kemudian klien hanya merender segmen tertentu dari visual itu. Ini lebih merupakan pengaturan array multi-monitor yang besar, jadi saya tidak begitu mengerti bagaimana melakukannya hanya dengan menyiarkan data yang mendasarinya - person Mark; 12.10.2010
comment
Selain itu, apa yang Anda maksud dengan API thumbnail sangat terbatas dan tidak memberi Anda akses ke gambar sebenarnya? Apa yang memberi Anda akses? - person Mark; 12.10.2010
comment
@Mark - Baca tentang API thumbnail di MSDN - Anda mengatur jendela sumber dan persegi panjang tujuan pada jendela target dan thumbnail muncul begitu saja, kode Anda tidak menyentuh frame sebenarnya (mungkin ada cara untuk mendapatkan frame karena beberapa pengalih tugas tampaknya menggunakannya , tapi saya belum melihatnya didokumentasikan di mana pun) - person Nir; 12.10.2010
comment
@Mark - Selain itu, sebagai seseorang yang sering menggunakan desktop jarak jauh, saya tidak akan menggunakan kata halus atau fleksibel untuk mendeskripsikannya. mengirimkan seluruh buffer layar adalah cara paling intensif bandwidth untuk berkomunikasi dan karena perangkat keras grafis Anda cepat dan jaringan lambat, semakin sedikit bandwidth yang Anda gunakan, semakin baik masa berlakunya. - person Nir; 12.10.2010