質問編集履歴
3
タグ修正
test
CHANGED
File without changes
|
test
CHANGED
File without changes
|
2
誤記修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -6,7 +6,7 @@
|
|
6
6
|
|
7
7
|
・ターミナル機能を持つアプリ(別アプリ)は外部で作成されたソフトのためソースコード等はありません。
|
8
8
|
|
9
|
-
・別アプリはターミナル機能で、端末状態の設定コマンド、取得コマンドが利用可能で、C#のアプリ仕様として、C#のアプリが端末に対して直接ではなく、別アプリのターミナル機能を経由して、設定コマンド発行、取得コマンド発行による情報取得を行うがあります。
|
9
|
+
・別アプリはターミナル機能で、端末状態の設定コマンド、取得コマンドが利用可能で、C#のアプリ仕様として、C#のアプリが端末に対して直接ではなく、別アプリのターミナル機能を経由して、設定コマンド発行、取得コマンド発行による情報取得を行う必要があります。
|
10
10
|
|
11
11
|
|
12
12
|
|
1
記載間違いの修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -2,9 +2,15 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
|
5
|
+
・ある端末に接続されたターミナル機能を持つアプリ(ターミナル部はRICHTEXTBOXコントロール)に対して、設定コマンド、取得コマンドを発行するC#のアプリを作っています。
|
6
6
|
|
7
|
-
|
7
|
+
・ターミナル機能を持つアプリ(別アプリ)は外部で作成されたソフトのためソースコード等はありません。
|
8
|
+
|
9
|
+
・別アプリはターミナル機能で、端末状態の設定コマンド、取得コマンドが利用可能で、C#のアプリ仕様として、C#のアプリが端末に対して直接ではなく、別アプリのターミナル機能を経由して、設定コマンド発行、取得コマンド発行による情報取得を行うがあります。
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
・そのため、C#のアプリから別アプリのRICHTEXTBOXに対して、設定コマンドの文字列の送信、取得コマンドの文字列の送信と、取得コマンドによってターミナル部に出力された文字列結果の読込みが必要ですが、文字列の送信はできており、文字列結果の読込みは最終行もしくは指定行の読込みを行いたいです。
|
8
14
|
|
9
15
|
|
10
16
|
|
@@ -12,12 +18,26 @@
|
|
12
18
|
|
13
19
|
|
14
20
|
|
15
|
-
現在、C#から別アプリのRICHTEXTBOXのウィンドウハンドルを取得して、
|
21
|
+
現在、C#から別アプリのRICHTEXTBOXのウィンドウハンドルを取得して、WM_GETTEXTで指定した文字数分を取得することは可能なのですが、別アプリのRICHTEXTBOX側の行数が時間と共に増えていくため、
|
16
22
|
|
17
|
-
|
23
|
+
指定するサイズも読めず、C#から別アプリのRICHTEXTBOXの最終行(指定行)のみを取得するなど、何か方法はないでしょうか?
|
18
24
|
|
19
|
-
別アプリのRICHTEXTBOX側の行数が時間と共に増えていくため、
|
20
25
|
|
21
|
-
C#から取得する度に全ての行を取得するのは処理コストが増えていくので、
|
22
26
|
|
27
|
+
###該当のソースコード
|
28
|
+
|
29
|
+
別アプリのRICHTEXTBOXのウィンドウハンドル(hWnd)を取得して、WM_GETTEXTで指定した文字数分を取得することは可能だが、ターミナル部なので何行なのか、何文字なのか分からない。
|
30
|
+
|
23
|
-
|
31
|
+
最終行、指定行などで部分的に読み出しできるなどよい方法はないでしょうか?
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
```C#
|
36
|
+
|
37
|
+
uint WM_GETTEXT = 0x000D;
|
38
|
+
|
39
|
+
StringBuilder sb = new StringBuilder(256);
|
40
|
+
|
41
|
+
SendMessage((IntPtr)hWnd, (UInt32)WM_GETTEXT, (int)255, sb);
|
42
|
+
|
43
|
+
```
|