teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

わかりにくい表現を修正しました。

2021/11/21 09:56

投稿

keiji_kc
keiji_kc

スコア18

title CHANGED
File without changes
body CHANGED
@@ -1,27 +1,21 @@
1
1
  ## 困っていること
2
- VPSでRemote desktopWindowsを動かした際画面キャプチャが取れません。
2
+ VPSでWindows RDP経由画面キャプチャ取るスクリプトを動かした際、「実際にローカルからRDPでアクセスしている時しか」キャプチャが取れません。
3
3
 
4
- 実際にRDPからデストップを立ち上げいるとちんと動くのですが、RDPからの接続がない状態と動きません。
4
+ 以下、適当なコードです。ローカルからRDPでアセスし、動かすちんと動作しますが、RDPで画面を描画していない状態で、タスクスケジューラでキャプチャを取ろうすると、うまく動きません。
5
5
 
6
- 以下、適当なコードです。Lineの部分はとりあえず、プログラムが動いていることを確認するために書いているだけです。
7
-
8
-
9
6
  ```python
10
- from line import Line
11
7
  from PIL import ImageGrab
12
8
 
13
- # 起動の確認
14
- line = Line()
15
- line.send_message("プログラム起動はOK")
16
-
17
9
  # ローカルからリモートデスクトップにアクセスしているときしか動かない
18
10
  ImageGrab.grab().save('desktop.jpg')
19
11
  ```
20
12
 
21
- VPSで実際に画面を起動しないと画面の描画が行われていないのでしょうか?
13
+ 実際に画面を起動しないと画面の描画が行われていないのでしょうか?
22
14
 
23
- Windowsのタスクマネージャーを見ると、「デスクトップウィンドウマネージャ」というのが動いているので、これがヒントになるような気がするのですが。。
15
+ VPSのWindowsのタスクマネージャーを見ると、「デスクトップウィンドウマネージャ」というのが動いているので、これがヒントになるような気がするのですがどうでしょうか。。これをpythonで強制的に立ち上げて、、実際に画面を表示していなくても、画面描画されている状態を作るようなことは技術的に可能でしょうか?
24
16
 
17
+
18
+
25
19
  ## やりたいこと
26
20
 
27
21
  ディスプレイサイズを指定した上で、デスクトップを描画し、それを上記コードで画面キャプチャする