回答編集履歴

1

見直しキャンペーン中

2023/07/22 08:32

投稿

TN8001
TN8001

スコア9326

test CHANGED
@@ -1,77 +1,39 @@
1
1
  `HH_WINTYPE`が間違っているんじゃないでしょうか。
2
2
 
3
-
4
-
5
3
  [HH_WINTYPE (htmlhelp.h) - Win32 apps | Microsoft Docs](https://docs.microsoft.com/en-us/windows/win32/api/htmlhelp/ns-htmlhelp-hh_wintype)
6
-
7
4
  と見比べると、
8
-
9
5
  `HH_INFOTYPE *paInfoTypes;`と`int tabpos;`
10
-
11
6
  `BYTE tabOrder[HH_MAX_TABS + 1];`以下のかなり
12
-
13
7
  が違うように思います。
14
8
 
15
-
16
-
17
9
  GitHubで`HH_WINTYPE`を検索し、呼び出しコード付きだった↓をお借りして試したところ取得できました。
18
-
19
10
  [AppTesauros/HH1Interop.cs at master · danilozacyac/AppTesauros](https://github.com/danilozacyac/AppTesauros/blob/master/ControlFramework/Utility/HH1Interop.cs)
20
11
 
21
-
22
-
23
- ```C#
12
+ ```cs
24
-
25
13
  using System;
26
-
27
14
  using System.Runtime.InteropServices;
28
15
 
29
-
30
-
31
16
  namespace Questions275515
32
-
33
17
  {
34
-
35
18
  class Program
36
-
37
19
  {
38
-
39
20
  static void Main()
40
-
41
21
  {
42
-
43
22
  var chm = @"C:\Windows\IME\IMEJP\help\IMJPCL.CHM>main";
44
-
45
23
  var type = new HH1Interop.HH_WINTYPE();
46
-
47
24
  HH1Interop.HtmlHelp_GetWinType(0, chm, ref type);
48
-
49
25
  Console.WriteLine(type.pszCaption); // Microsoft IME - プロパティのヘルプ
50
-
51
26
  Console.ReadKey();
52
-
53
27
  }
54
-
55
28
  }
56
29
 
57
-
58
-
59
30
  // https://github.com/danilozacyac/AppTesauros/blob/master/ControlFramework/Utility/HH1Interop.cs
60
-
61
31
  public class HH1Interop
62
-
63
32
  {
64
-
65
33
  // 省略
66
-
67
34
  }
68
-
69
35
  }
70
-
71
36
  ```
72
37
 
73
-
74
-
75
38
  **注意**
76
-
77
39
  私は`P/Invoke`をあまりわかっていません。`HTML Help`は全くわかっていません^^;