回答編集履歴

2

誤字修正

2017/10/15 14:18

投稿

dodox86
dodox86

スコア9183

test CHANGED
@@ -116,7 +116,7 @@
116
116
 
117
117
  1. まずはExcelVBAでのサンプルソースをもとに当該Active Xコントールを使って目的の機能を簡単に作り、習熟する。
118
118
 
119
- 2. C# なりなんなりで、Visual Studio で.NET Frameworkベースの製品版アプリ作る。
119
+ 2. C# なりなんなりで、Visual Studio で.NET Frameworkベースの製品版アプリ作る。
120
120
 
121
121
 
122
122
 

1

改行位置、誤記修正。

2017/10/15 14:18

投稿

dodox86
dodox86

スコア9183

test CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
 
4
4
 
5
- 「Active X COMコンテナアプリケーション」との言い方は、先にご回答をいただいていたようにActive Xコンポーネントを含めた/載せた(コンテナ)アプリケーションとの意味であり、MicrosoftのInternet Explorer やWord等のMicrosoft Officeアプリケーションに代表されるようなプログラム、加えてActive Xコントロールをせた自分で開発したプログラムを含むものです。
5
+ 「Active X COMコンテナアプリケーション」との言い方は、先にご回答をいただいていたようにActive Xコンポーネントを含めた/載せた(コンテナ)アプリケーションとの意味であり、MicrosoftのInternet Explorer やWord等のMicrosoft Officeアプリケーションに代表されるようなプログラム、加えてActive Xコントロールをせた自分で開発したプログラムを指します。
6
6
 
7
7
 
8
8
 
@@ -10,9 +10,7 @@
10
10
 
11
11
 
12
12
 
13
- 1つ目の質問の「ActiveX (COM) コンテナアプリケーションとは何ですか」の回答としては以上です。
13
+ 1つ目の質問の「ActiveX (COM) コンテナアプリケーションとは何ですか」の回答としては以上です。では、2つ目の「Pythonから呼び出せますか?」への回答ですが、基本的に「はい」です。
14
-
15
- では、2つ目の「Pythonから呼び出せますか?」への回答ですが、基本的に「はい」です。
16
14
 
17
15
  ただし、質問者様が使いたいと考えている製品のActive Xコントロールは、Python からは使うのが困難なようです。(後述します)
18
16
 
@@ -20,19 +18,15 @@
20
18
 
21
19
  基本的に、PythonからActive Xコントロールを操作するには以下のようにします。
22
20
 
23
- 0. 製品をインストールする。これでActive XコントロールがWindows に登録され、
24
-
25
- 外部のプログラムから参照/利用できるようになる。(もちろん、インストーラーに依存する)
21
+ 0. 製品をインストールする。これでActive XコントロールがWindows に登録され、外部のプログラムから参照/利用できるようになる。(もちろん、インストーラーに依存する)
26
-
27
-
28
-
22
+
23
+
24
+
29
- 1. Python のwin32com モジュールを使用し、Active X コントロールを操作する。
25
+ 1. Python のwin32com モジュールを使用し、Active X コントロールを操作する。ここで注意しなければならないことは、Pythonもwin32comモジュールも32ビット版を使用することです。(Active Xコントロールが32ビット版であればそれに合わせる)
30
-
31
- ここで注意しなければならないことは、Pythonもwin32comモジュールも32ビット版を
26
+
32
-
33
- 使用することです。(Active Xコントロールのnnビットに合わせる)
27
+
34
-
28
+
35
- 当方では以下の環境で試しています。
29
+ 当方では以下の環境で試していますので、以下の説明もこれに沿います
36
30
 
37
31
  - Windows 7 Enterprise Edition (64ビット)
38
32
 
@@ -44,7 +38,7 @@
44
38
 
45
39
 
46
40
 
47
- 例:Internet Explorer を操作して、teratailのこの質問を開く
41
+ 例:Internet Explorer を操作して、teratailのこの質問を開くには以下のようにします。
48
42
 
49
43
  ```Python
50
44
 
@@ -106,7 +100,7 @@
106
100
 
107
101
  製品のサンプルコードのページ「その他のサンプルプログラム(※あえてリンクは示していません)」で、各種のExcelVBAでのサンプルアプリケーションが紹介されています。実際にやりたいことはこれらのExcelVBAのサンプルを参考に、Python + win23comモジュールで実装していければ良いのですが、一部のコード `ActiveMarket.Prices.Read()` メソッドに関してPython win32comモジュールのインターフェースではActive Xコントロール側へ正しい値を渡せない問題がありました。(上記サンプルコードで一部を示していますが、これも不完全です)
108
102
 
109
- これはどちらのバグと言う訳ではなく、制限事項になることだと考えています。(もともとPython win32comモジュールはWindowsとのインターフェースの便宜を図ろう、と言う試みであろうから)
103
+ これはどちらのバグと言う訳ではなく、制限事項になることだと考えています。(もともとPython win32comモジュールはWindowsとのインターフェースの便宜を図ろう、と言う目的であろうから)
110
104
 
111
105
 
112
106
 
@@ -126,11 +120,11 @@
126
120
 
127
121
 
128
122
 
129
- Visual Studio で.NET Frameworkベースの言語でActive Xコントロールを使用するのは、簡単です。
130
-
131
- 実際、Visual Studio 2012 + C#でテストプログラムを作り、今回の"Pan Active Market Database 1.3" Active Xコントロールを利用して、指定銘柄の指定範囲の株価の終値一覧を読み出すことができました。具体的には以下のような手順で作ることができるようになります。
123
+ Visual Studio で.NET Frameworkベースの言語でActive Xコントロールを使用するのは、簡単です。実際、Visual Studio 2012 + C#でテストプログラムを作り、今回の"Pan Active Market Database 1.3" Active Xコントロールを利用して、指定銘柄の指定範囲の株価の終値一覧を読み出すことができました。
124
+
125
+
126
+
132
-
127
+ 具体的には以下のような簡単な手順で作ることができるようになります。
133
-
134
128
 
135
129
  0. 製品(相場アプリケーション)をインストールする。
136
130
 
@@ -138,7 +132,7 @@
138
132
 
139
133
 
140
134
 
141
- 以下、抜粋ですが、コードの実例を示します。WPFアプリケーションです。
135
+ 抜粋ですが、コードの実例を示します。WPFアプリケーションです。
142
136
 
143
137
  ```C#
144
138
 
@@ -200,7 +194,7 @@
200
194
 
201
195
  ```
202
196
 
203
- 各種のメソッドやその引数は、Visual Studio に標準で装備されている「オブジェクトブラウザー」でメソッドや引数の型を見ることができます。これとExcelVBAのサンプルをもとに実装していけばよろしいかと思います。クラスやメソッドの細かい使用方法については、販売元/開発元に正規のライセンスに沿って尋ねていくのが順当でしょう。
197
+ 各種のメソッドやその引数は、Visual Studio に標準で装備されている「オブジェクトブラウザー」で確認することができます。これとExcelVBAのサンプルを参考に実装していけばよろしいかと思います。クラスやメソッドの細かい使用方法については、販売元/開発元に正規のライセンスに沿って尋ねていくのが順当でしょう。
204
198
 
205
199
 
206
200