Mendapatkan RDP untuk menghormati parameter lebar dan tinggi?

6

Saya sudah memeriksa ini pertanyaan tapi situasiku sedikit berbeda.

Saya memiliki komputer kerja dengan 2 monitor, masing-masing berjalan pada 1650x1050. Saya memiliki 3 pengaturan monitor di rumah. Kedua sistem menjalankan Windows 7. Ketiga monitor pada sistem rumah dijalankan pada 1920x1080 dengan satu pengaturan monitor secara terpisah dan dua lainnya dikonfigurasikan sebagai monitor 3840x1080 tunggal. Saya ingin sesi RDP saya berjalan di monitor 3840x1080, tapi ada masalah.

Saya telah mengkonfigurasi sesi RDP komputer di rumah saya agar pekerjaan dapat berjalan pada 3840x1080:

mstsc.exe default.rdp /w:3840 /h:1080

Ini berfungsi sekitar separuh waktu. Setengah lainnya, jendela jarak jauh muncul pada resolusi 4096x1080 (saya pikir ini mungkin resolusi "maksimum" default atau sesuatu.)

Sepertinya ada hubungannya dengan apakah sesi dimulai pada satu "monitor" tunggal saya atau "dual" monitor saya yang lain. Sayangnya, saya memiliki monitor "tunggal" yang diatur sebagai tampilan "utama" saya di Windows jadi di situlah ia ingin memulai. Saya harus berkeliling dengan posisi pintasan desktop dan memindahkan jendela login ke monitor lain, dan tetap saja berfungsi sekitar separuh waktu.

Apakah ada yang punya cara untuk (1) mendapatkan RDP untuk secara paksa menerima resolusi 3840x1080 ini atau (2) memaksanya untuk memulai pada monitor sekunder?

user1071914
sumber

Jawaban:

4

Anda dapat melakukannya dengan mengubah nilai dari winposstr di dalam file rdp itu sendiri. Berikut ini penjelasan terperinci

Menghitung Nilai untuk winposstr

Angka-angka yang akan Anda gunakan tergantung pada berapa banyak monitor yang Anda miliki, resolusi layar masing-masing, dan monitor mana yang Anda pilih untuk menjadi monitor utama Anda.

Posisi tepi kiri menentukan monitor

Yang pertama dari empat angka terakhir, yang paling penting, menunjukkan posisi tepi kiri jendela. Jika monitor utama Anda ada di tengah dan Anda memiliki monitor di kiri dan kanan, Anda akan menggunakan angka negatif untuk monitor di sebelah kiri, dan angka positif untuk monitor di sebelah kanan.

Misalnya, jika Anda memiliki dua monitor di sebelah kiri yang masing-masing memiliki resolusi 1680 x 1050, gunakan -1680 untuk menempatkan jendela sesi di monitor ke kiri langsung, dan gandakan yang (-3360) untuk menempatkan jendela di monitor paling kiri.

winposstr: s: 0,1, -1680 , 0,0,1050

winposstr: s: 0,1, -3360 , 0, -1680.1050

Jika monitor utama Anda memiliki resolusi 1200 x 1920, gunakan 1200 untuk menempatkan jendela pada monitor di sebelah kanan. Ini berfungsi karena posisi piksel di mana monitor utama tidak aktif (dan monitor di sebelah kanan dimulai).

winposstr: s: 0,1, 1200 , 0,2880,1050

Jika Anda memiliki dua monitor di sebelah kanan dengan resolusi 1680 x 1050, dan ingin menempatkan jendela di monitor paling kanan, cukup tambahkan 1.200 ke 1.680 untuk mendapatkan 2.880.

winposstr: s: 0,1, 2880 , 0,4560,1050

Tepi Atas dan Bawah
Angka-angka lain hanya benar-benar berperan ketika jendela dikembalikan (tidak dimaksimalkan) dan dapat disesuaikan dengan selera.

Angka kedua (ketiga dari ujung) menunjukkan tepi teratas jendela, sehingga Anda dapat meninggalkan angka ini pada 0 kecuali Anda memiliki persyaratan khusus. Angka keempat (terakhir) adalah resolusi vertikal (= bawah) dari jendela. Anda dapat membiarkannya pada resolusi vertikal maksimum monitor, seperti pada contoh di atas.

winposstr: s: 0,1,1200, 0 , 2880, 1050

Tepi Kanan
Tepi kanan jendela diekspresikan oleh di samping nomor terakhir. Kecuali Anda lebih suka sebaliknya, ini dapat diatur ke ukuran yang sama dengan jendela yang dimaksimalkan.

╔══════════════════╦════════════════════════════╦════════════════════════════════════╗
║     Monitor      ║ Right Edge Calculation     ║          Winposstr Value           ║
╠══════════════════╬════════════════════════════╬════════════════════════════════════╣
║ Leftmost         ║ -3360 + 1680 = -1680       ║ winposstr:s:0,1,-3360,0,-1680,1050 ║
║ Immediate left   ║ -1680 + 1680 = 0           ║ winposstr:s:0,1,-1680,0,0,1050     ║
║ Immediate right  ║ 1200 + 1680 = 2880         ║ winposstr:s:0,1,1200,0,2880,1050   ║
║ Rightmost        ║ 1200 + 1680 + 1680 = 4560  ║ winposstr:s:0,1,2880,0,4560,1050   ║
╚══════════════════╩════════════════════════════╩════════════════════════════════════╝
Scott Chamberlain
sumber
Jawaban yang bagus, saya berharap itu berhasil. Sayangnya, tidak peduli apa yang saya coba, tampaknya membuat remote desktop terbuka dengan dimensi 4096x1080. Saya sudah mencoba -3840,0,01080 yang tampaknya merupakan pengaturan yang benar (monitor "komposit" saya yang besar berada di sebelah kiri desktop utama saya). Saya juga telah mencoba berbagai pengaturan lain (+ -1 untuk setiap nomor misalnya) dan tampaknya dengan kuat ditetapkan pada 4096 sebagai lebarnya. Saya akan terus mengutak-atiknya ... terima kasih lagi ...
user1071914
Gahhh. Ini aneh. Tiba-tiba mulai bekerja. Tampaknya terhubung ke parameter "mode layar id" serta parameter "winposstr". Jika sesi RDP dimulai sebagai WINDOW, sepertinya mengatur sendiri ke dimensi yang benar. Saya tidak akan berdebat dengan itu - menang adalah kemenangan sejauh yang saya ketahui. Terima kasih untuk bantuannya!
user1071914
Jika jendela yang dibuka memiliki bilah gulir kemudian tambahkan 16 ke nomor terakhir kedua (bantalan jendela) dan 46 ke nomor terakhir (bantalan jendela + bilah judul)
Søren Kruse
0

Saya menemukan instruksi ini agak membingungkan, atau mungkin saya terlalu malas untuk membaca semuanya. Saya cukup mengatur nilai 3 ke total nilai "x" yang saya inginkan (dalam kasus saya, saya ingin monitor di sebelah kanan menampilkan koneksi, dan monitor di sebelah kiri memiliki resolusi 1280x800, jadi saya menempatkan 1280 di sana) . Lalu saya membuat semua angka yang mengikutinya 0. Tampaknya berhasil.

winposstr:s:0,1,<your x value>,0,0,0

sarink
sumber