ホスト・アクセス・クラス・ライブラリーの自動化オブジェクト

ホスト・アクセス・クラス・ライブラリーの自動化オブジェクトを使用すると、 パーソナル・コミュニケーションズ製品が Microsoft® の COM ベースのオートメーション技術 (以前は OLE オートメーションと呼ばれていた) をサポートできるように なります。ECL 自動化オブジェクトは、一連の自動化サーバーであり、これを使用することによって、 自動化コントローラー (Microsoft Visual Basic など) が、プログラマチックにパーソナル・コミュニケーションズのデータおよび機能にアクセスすることができます。

この例として、キーをパーソナル・コミュニケーションズの 表示スペースに送信することを考慮します。これは、「パーソナル・コミュニケーションズ」ウィンドウでキーを入力すること により実行できますが、適切なパーソナル・コミュニケーションズの自動化サーバー (この場合、autECLPS) を使用して自動処理することもできます。Visual Basic を使用して、autECLPS オブジェクトを作成し、 表示スペースに配置されるストリングを使用して、 そのオブジェクトの SendKeys メソッドを呼び出します。

言い替えると、自動化プロトコルを制御できる アプリケーション (自動化コントローラー) は、パーソナル・コミュニケーションズの操作の一部 (自動化サーバー) を制御することができます。 パーソナル・コミュニケーションズは、ECL 自動化オブジェクトを使用する Visual Basic Script をサポートしています。 詳細については、パーソナル・コミュニケーションズの マクロやスクリプトのサポートについて参照してください。

パーソナル・コミュニケーションズは、これを実行するためにいくつかの 自動化サーバーを提供しています。 これらのサーバーは、直感的に理解できる身近なオブジェクトとして、そして パーソナル・コミュニケーションズの操作容易性を制御するメソッドとプロパティーを持つものとして実装されています。 各オブジェクトは、自動化 ホスト・アクセス・クラス・ライブラリーで あることを表す autECL で始まります。 オブジェクトは、以下のとおりです。

図 3 に、autECL オブジェクトを図形的に表現します。

図 3. ホスト・アクセス・クラス・ライブラリーの自動化オブジェクト

この章は、それぞれのオブジェクトのメソッドおよびプロパティーを詳細に説明しており、 自動化オブジェクトを使用する潜在的可能性のあるすべてのユーザーを対象にしています。 オブジェクトは、Visual Basic などのスクリプト・アプリケーションを介して使用する場合が一般的であるため、例ではすべて Visual Basic 形式を使用しています。

autSystem クラス

autSystem クラスは、一部のプログラム言語で使用する場合に役立つ 2 つのユーティリティー関数を提供します。 詳細については、autSystem クラスを参照してください。

autECLConnList クラス

autECLConnList には、 すべての開始された接続についての情報が含まれています。 登録されている名前は、PCOMM.autECLConnList です。

autECLConnList オブジェクトには、ホストへの接続についての情報の集合が 含まれています。集合の各要素は、単一の接続 (エミュレーター・ウィンドウ) を 示しています。このリスト内の接続は、どのような状態 (例えば、停止または切断) にあるものでも構いません。 すべての開始済みの接続が、このリストに示されます。 リスト要素には、接続の状態が入っています。

autECLConnList オブジェクトは、現在の接続の 静的スナップショットを提供します。このリストは、接続の開始および停止時に動的に更新されることは ありません。Refresh メソッドは、autECLConnList オブジェクトの作成時に自動的に呼び出されます。autECLConnList オブジェクトをその作成後すぐ後に使用すると、 接続のリストは最新になります。 しかし、作成後しばらくたった場合は、確実に現在のデータを取得するためには、 他のメソッドにアクセスする前に autECLConnList オブジェクトで Refresh メソッドを 呼び出さなければなりません。 一度 Refresh を呼び出せば、集合の内容をすべて調べることができます。

プロパティー

このセクションでは、autECLConnList オブジェクトの プロパティーについて説明します。

名前 属性
Long Count 読み取り専用

Count

これは、Refresh メソッドへの最後の呼び出しに 関する autECLConnList 集合にある接続の数です。Count プロパティーは、Long データ型で読み取り専用 です。以下の例では、Count プロパティーを使用しています。

Dim autECLConnList as Object
Dim Num as Long
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
autECLConnList.Refresh
Num = autECLConnList.Count

以下の表は、集合要素プロパティーを示しています。 これは、リスト内の各項目に有効です。

名前 属性
String Name 読み取り専用
Long Handle 読み取り専用
String ConnType 読み取り専用
Long CodePage 読み取り専用
Boolean Started 読み取り専用
Boolean CommStarted 読み取り専用
Boolean APIEnabled 読み取り専用
Boolean Ready 読み取り専用

Name

この集合要素プロパティーは、接続の接続名ストリングです。 パーソナル・コミュニケーションズは、短い文字 ID (A から Z、または a から z) のみをストリングで戻します。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Name は、String データ型で読み取り専用です。以下の例では、Name 集合要素プロパティーを使用しています。

Dim  Str as String
Dim autECLConnList as Object
Dim Num as Long
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
autECLConnList.Refresh
Str = autECLConnList(1).Name

Handle

この集合要素プロパティーは、接続のハンドルです。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。Handle は、Long データ型で読み取り専用です。 以下の例では、Handle 集合要素プロパティーを使用しています。

Dim autECLConnList as Object
Dim Hand as Long
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
autECLConnList.Refresh
Hand = autECLConnList(1).Handle

ConnType

この集合要素プロパティーは、接続タイプです。 このタイプは、時間の経過とともに変更する場合が あります。ConnType は、String データ型で読み取り専用です。 以下の例で、ConnType プロパティーを示します。

Dim  Type as String
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
autECLConnList.Refresh
Type = autECLConnList(1).ConnType

ConnType プロパティーの接続タイプは、以下のとおりです。

戻されるストリング 意味
DISP3270 3270 ディスプレイ
DISP5250 5250 ディスプレイ
PRNT3270 3270 プリンター
PRNT5250 5250 プリンター
ASCII VT エミュレーション

CodePage

この集合要素プロパティーは、接続のコード・ページです。 このコード・ページは、時間の経過とともに変更される場合があります。CodePage は、Long データ型で読み取り専用です。以下の例で、CodePage プロパティーを示します。

Dim  CodePage as Long
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
autECLConnList.Refresh
CodePage = autECLConnList(1).CodePage

Started

この集合要素プロパティーで、 エミュレーター・ウィンドウが開始されたかどうかを示します。 ウィンドウがオープンしている場合、値は True です。 その他の場合は False です。Started は、Boolean データ型で読み取り専用です。 以下の例で、Started プロパティーを示します。

Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
autECLConnList.Refresh
 
' This code segment checks to see if is started.
' The results are sent to a text box called Result.
If Not autECLConnList(1).Started Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

CommStarted

この集合要素プロパティーは、ホストへの接続の状況を示しています。 ホストが接続されている場合、値は True です。 その他の場合は False です。CommStarted は、Boolean データ型で読み取り専用です。 以下の例で、CommStarted プロパティーを示します。

Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
autECLConnList.Refresh
 
' This code segment checks to see if communications are connected
' The results are sent to a text box called CommConn.
If Not autECLConnList(1).CommStarted Then
    CommConn.Text = "No"
Else
    CommConn.Text = "Yes"
End If

APIEnabled

この集合プロパティーで、エミュレーターが API 使用可能か どうかを示します。API 設定 (パーソナル・コミュニケーションズのウィンドウでは、 「ファイル」->「API の設定」を選択) の状態に応じて、 接続が可能な場合と、接続できない場合があります。エミュレーターが使用可能の場合には、True です。その他の場合には、False です。APIEnabled は、Boolean データ型で読み取り専用です。以下の例で、APIEnabled プロパティーを示します。

Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
autECLConnList.Refresh
 
' This code segment checks to see if API is enabled.
' The results are sent to a text box called Result.
If Not autECLConnList(1).APIEnabled Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

Ready

この集合要素プロパティーで、エミュレーター・ウィンドウが 開始されていて、API 使用可能で、そして接続されているかどうかを示します。 このプロパティーは、3 つのすべてのプロパティーを確認します。 エミュレーターが準備できている場合には、値は True です。 その他の場合には、False です。Ready は、Boolean データ型で読み取り専用です。 以下の例で、Ready プロパティーを示します。

Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
autECLConnList.Refresh
 
' This code segment checks to see if X is ready.
' The results are sent to a text box called Result.
If Not autECLConnList(1).Ready Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

autECLConnList メソッド

以下のセクションで、autECLConnList オブジェクトに 有効なメソッドを説明します。

void Refresh()
Object FindConnectionByHandle(Long Hand)
Object FindConnectionByName(String Name)

集合要素メソッド

以下の集合要素メソッドは、リスト内の各項目に有効です。

void StartCommunication()
void StopCommunication()

Refresh

Refresh メソッドは、 開始されたすべての接続のスナップショットを取得します。

注:
確実に現在のデータを取得するには、autECLConnList 集合に アクセスする前にこのメソッドを呼び出さなければなりません。

プロトタイプ

void Refresh()

パラメーター

なし

戻り値

なし

以下の例は、開始されたすべての接続のスナップショットを取得するため に Refresh メソッドを使用する方法を示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)

FindConnectionByHandle

このメソッドは、 Hand パラメーターで渡されるハンドル の autECLConnList オブジェクトでの要素を見つけます。 このメソッドは通常、与えられた接続がシステムで活動状態であるか を確認するために使用されます。

プロトタイプ

Object FindConnectionByHandle(Long Hand)

パラメーター

Long Hand
リストで検索するハンドル。

戻り値

Object
集合要素ディスパッチ・オブジェクト。

以下の例は、接続ハンドルにより要素を見つける方法を示しています。

Dim Hand as Long
Dim autECLConnList as Object
Dim ConnObj as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the collection
autECLConnList.Refresh
' Assume Hand obtained earlier
Set ConnObj = autECLConnList.FindConnectionByHandle(Hand)
Hand = ConnObj.Handle

FindConnectionByName

このメソッドは、Name パラメーターで 渡される名前の autECLConnList オブジェクトでの要素を見つけます。 このメソッドは通常、与えられた接続がシステムで活動状態であるか を確認するために使用されます。

プロトタイプ

Object FindConnectionByName(String Name)

パラメーター

String Name
リストで検索する名前。

戻り値

Object
集合要素ディスパッチ・オブジェクト。

以下の例は、接続名により autECLConnList オブジェクト内の要素を 見つける方法を示しています。

Dim Hand as Long
Dim autECLConnList as Object
Dim ConnObj as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the collection
autECLConnList.Refresh
' Assume Hand obtained earlier
Set ConnObj = autECLConnList.FindConnectionByName("A")
Hand = ConnObj.Handle

StartCommunication

StartCommunication 集合要素メソッドは、 ホスト・データ・ストリームに PCOMM エミュレーターを接続します。 これは、PCOMM エミュレーター「通信」メニューを表示して「接続」を選んだ場合と同じ結果になります。

プロトタイプ

void StartCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
'Start the first session
autECLConnList.Refresh
autECLConnList(1).StartCommunication()
 

StopCommunication

StopCommunication 集合要素メソッドは、 ホスト・データ・ストリームから PCOMM エミュレーターを切断します。 これは、PCOMM エミュレーターの「通信」メニューを表示して 「切断」を選んだ場合 と同じ結果になります。

プロトタイプ

void StopCommunication()

パラメーター

なし

戻り値

なし

以下の例は、ホストから PCOMM エミュレーター・セッションを切断する方法を示したものです。

Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
'Start the first session
autECLConnList.Refresh
autECLConnList(1).StartCommunication()
'
'Interact programmatically with host
'
autECLConnList.Refresh
'Stop the first session
autECLConnList(1).StartCommunication()
 

autECLConnMgr クラス

autECLConnMgr は、 マシン上のすべてのパーソナル・コミュニケーションズ接続を管理します。 これには、接続の開始および停止など、接続の管理に関連するメソッドが含まれています。 また、autECLConnList オブジェクトを作成して、システムで認知されている すべての接続のリストを列挙します (autECLConnList クラスを参照)。 登録されている名前は、PCOMM.autECLConnMgr です。

プロパティー

このセクションでは、autECLConnMgr オブジェクトの プロパティーについて説明します。

名前 属性
autECLConnList オブジェクト autECLConnList 読み取り専用

autECLConnList

autECLConnMgr オブジェクトには、autECLConnList オブジェクトが 含まれています。このメソッドおよびプロパティーの詳細については、 autECLConnList クラスを参照してください。 プロパティーには、autECLConnList の値があります。 これは、autECLConnList ディスパッチ・オブジェクトです。 以下の例は、このプロパティーを示しています。

Dim Mgr as Object
Dim Num as Long
 
Set Mgr = CreateObject("PCOMM.autECLConnMgr ")
 
Mgr.autECLConnList.Refresh
Num = Mgr.autECLConnList.Count

autECLConnMgr メソッド

以下のセクションで、autECLConnMgr オブジェクトに有効な メソッドを説明します。

void RegisterStartEvent()
void UnregisterStartEvent()
void StartConnection(String ConfigParms)
void StopConnection(Variant Connection, [optional] String StopParms)

RegisterStartEvent

このメソッドは、セッションで開始イベントの通知を受け取るため の autECLConnMgr オブジェクトを登録します。

プロトタイプ

void RegisterStartEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterStartEvent

開始イベントの処理を終了します。

プロトタイプ

void UnregisterStartEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

StartConnection

このメンバー関数は、 新しいパーソナル・コミュニケーションズのエミュレーター・ウィンドウを 開始します。ConfigParms ストリングには、使用上の注意で 説明されているとおりの接続構成情報が入っています。

プロトタイプ

void StartConnection(String ConfigParms)

パラメーター

String ConfigParms
構成ストリング。

戻り値

なし

使用上の注意

構成ストリングは、インストール・システムによって異なります。 異なるインストール・システム上の autECL オブジェクトには、 構成ストリングに異なる形式または情報が必要とされる場合があります。 新しいエミュレーターはこの呼び出しの応答として開始されますが、 ホストに接続される場合もあれば、接続されない場合もあります。

パーソナル・コミュニケーションズの場合、構成ストリングの形式は次のようになります。

PROFILE=[']<filename>['] [CONNNAME=<c>] [WINSTATE=<MAX|MIN|RESTORE|HIDE>]

オプションのパラメーターは、大括弧 [] で囲みます。 パラメーターは、少なくとも 1 つのブランクで区切ります。 パラメーターは、大文字、小文字、または混合のいずれでも指定可能で、 順序も任意です。各パラメーターの意味は、次のとおりです。

以下の例は、新しいパーソナル・コミュニケーションズのエミュレーター・ウィンドウを 開始する方法を示します。

Dim Mgr as Object
Dim Obj as Object
Dim Hand as Long
 
Set Mgr = CreateObject("PCOMM.autECLConnMgr ")
Mgr.StartConnection("profile=coax connname=e")

StopConnection

StopConnection メソッドは、 接続ハンドルにより識別されるエミュレーター・ウィンドウを停止 (終了) します。StopParms ストリングの内容の詳細については、使用上の注意を 参照してください。

プロトタイプ

void StopConnection(Variant Connection, [optional] String StopParms)

パラメーター

Variant Connection
接続名またはハンドル。このバリアントに対して有効な型は short、long、BSTR、short by reference、 long by reference、および BSTR by reference です。
String StopParms
停止パラメーター・ストリング。ストリングの形式については、使用上の注意を参照。 このパラメーターはオプションです。

戻り値

なし

使用上の注意

停止パラメーター・ストリングは、インストール・システムに応じて異なります。 異なるインストール・システム上の autECL オブジェクトには、異なる形式または内容の パラメーター・ストリングが必要とされる場合があります。 パーソナル・コミュニケーションズの場合、ストリングは 以下の形式を持っています。

[SAVEPROFILE=<YES|NO|DEFAULT>]

オプションのパラメーターは、大括弧 [] で囲みます。 パラメーターは、少なくとも 1 つのブランクで区切ります。 パラメーターは、大文字、小文字、または混合のいずれでも指定可能で、 順序も任意です。各パラメーターの意味は、次のとおりです。

以下の例は、接続ハンドルにより識別されるエミュレーター・ウィンドウを 停止する方法を示します。

Dim Mgr as Object
Dim Hand as Long
 
Set Mgr = CreateObject("PCOMM.autECLConnMgr ")
 
' Assume we've got connections open and the Hand parm was obtained earlier
Mgr.StopConnection Hand, "saveprofile=no"
'or
Mgr.StopConnection "B", "saveprofile=no"

autECLConnMgr イベント

以下のイベントは autECLConnMgr に有効です。

void NotifyStartEvent(By Val Handle As Variant、By Val Started As Boolean)
NotifyStartError(By Val ConnHandle As Variant)
void NotifyStartStop(Long Reason)

NotifyStartEvent

セッションが開始あるいは停止しました。

プロトタイプ

void NotifyStartEvent(By Val Handle As Variant、By Val Started As Boolean)
注:
Visual Basic では、このサブルーチンが正しく作成されます。

パラメーター

By Val Handle As Variant
開始または停止したセッションのハンドルです。
By Val Started As Boolean
セッションが開始済みの場合は True で、それ以外の場合は False です。

例は、イベント処理の例を参照してください。

NotifyStartError

このイベントは、イベント処理でエラーが発生したときに起こります。

プロトタイプ

NotifyStartError(By Val ConnHandle As Variant)
注:
Visual Basic では、このサブルーチンが正しく作成されます。

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyStartStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyStartStop(Long Reason)

パラメーター

Long Reason
停止の理由コード。現在は、これは常に 0 です。

イベント処理の例

以下は、開始イベントの実装方法についての簡単な例です。

Option Explicit
Private WithEvents mCmgr As autECLConnMgr 'AutConnMgr added as reference
dim mSess as object
 
sub main()
'Create Objects
Set mCmgr = New autECLConnMgr
Set mSess = CreateObject("PCOMM.autECLSession")
mCmgr.RegisterStartEvent 'register for PS Updates
 
' Display your form or whatever here  (this should be a blocking call, otherwise sub just ends
call DisplayGUI()
mCmgr.UnregisterStartEvent
set mCmgr = Nothing
set mSess = Nothing
End Sub
 
'This sub will get called when a session is started or stopped
Private Sub mCmgr_NotifyStartEvent(Handle as long, bStarted as Boolean)
' do your processing here 
if (bStarted) then
mSess.SetConnectionByHandle Handle
end if
End Sub
 
'This event occurs if an error happens 
Private Sub mCmgr_NotifyStartError()
'Do any error processing here
End Sub
 
Private Sub mCmgr_NotifyStartStop(Reason As Long)
'Do any stop processing here
End Sub

autECLFieldList クラス

autECLFieldList は、 エミュレーター表示スペースでのフィールドの操作を実行します。 このオブジェクトは、単体として独立してはいません。 これは autECLPS に含まれ、autECLPS オブジェクトを介してのみアクセスされます。 autECLPS は、独立している場合も、autECLSession に含まれる場合もあります。

autECLFieldList には、表示スペースの すべてのフィールドの集合が含まれます。 集合の各要素には、集合要素プロパティーに示されている要素が含まれます。

autECLFieldList オブジェクトは、Refresh メソッドが 呼び出されたときに表示スペースにあった 静的スナップショットを提供します。

注:
確実に現在のフィールド・データを取得するには、 要素にアクセスする前に autECLFieldList オブジェクトで Refresh メソッド を呼び出さなければなりません。 一度 Refresh を呼び出せば、集合の内容をすべて調べることができます。

プロパティー

このセクションでは、autECLFieldList オブジェクトの プロパティーおよび集合要素プロパティーについて説明します。

名前 属性
Long Count 読み取り専用

Count

このプロパティーは、Refresh メソッドへの最後の 呼び出しでの autECLFieldList 集合にあるフィールドの 数です。Count は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim NumFields as long
Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
NumFields = autECLPSObj.autECLFieldList.Count

以下のプロパティーは集合要素プロパティーであり、 リストの各項目に有効です。

名前 属性
Long StartRow 読み取り専用
Long StartCol 読み取り専用
Long EndRow 読み取り専用
Long EndCol 読み取り専用
Long Length 読み取り専用
Boolean Modified 読み取り専用
Boolean Protected 読み取り専用
Boolean Numeric 読み取り専用
Boolean HighIntensity 読み取り専用
Boolean PenDetectable 読み取り専用
Boolean Display 読み取り専用

StartRow

この集合要素プロパティーは、autECLFieldList 集合で 与えられたフィールドの最初の文字の行位置です。StartRow は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim StartRow as Long
Dim StartCol as Long
Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  StartRow = autECLPSObj.autECLFieldList(1).StartRow
  StartCol = autECLPSObj.autECLFieldList(1).StartCol
Endif

StartCol

この集合要素プロパティーは、autECLFieldList 集合で 与えられたフィールドの最初の文字の桁位置です。StartCol は Long データ型 で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim StartRow as Long
Dim StartCol as Long
Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  StartRow = autECLPSObj.autECLFieldList(1).StartRow
  StartCol = autECLPSObj.autECLFieldList(1).StartCol
Endif

EndRow

この集合要素プロパティーは、autECLFieldList 集合で 与えられたフィールドの最後の文字の行位置です。EndRow は Long データ型で 読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim EndRow as Long
Dim EndCol as Long
Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  EndRow = autECLPSObj.autECLFieldList(1).EndRow
  EndCol = autECLPSObj.autECLFieldList(1).EndCol
Endif

EndCol

この集合要素プロパティーは、autECLFieldList 集合で 与えられたフィールドの最後の文字の桁位置です。EndCol は、Long データ型で 読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim EndRow as Long
Dim EndCol as Long
Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  EndRow = autECLPSObj.autECLFieldList(1).EndRow
  EndCol = autECLPSObj.autECLFieldList(1).EndCol
Endif

Length

この集合要素プロパティーは、autECLFieldList 集合で 与えられたフィールドの長さです。Length は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim Len as Long
Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  Len = autECLPSObj.autECLFieldList(1).Length
Endif

Modified

この集合要素プロパティーは、autECLFieldList 集合内の与えられたフィールドに 修正された属性があるかどうかを示しています。Modified は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  If ( autECLPSObj.autECLFieldList(1).Modified ) Then
    ' do whatever
  Endif
Endif

Protected

この集合要素プロパティーは、autECLFieldList 集合内の与えられたフィールドに 保護属性があるかどうかを示しています。Protected は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  If ( autECLPSObj.autECLFieldList(1).Protected ) Then
    ' do whatever
  Endif
Endif

Numeric

この集合要素プロパティーは、autECLFieldList 集合内の与えられたフィールドに 数字入力専用の属性があるかどうかを示します。Numeric は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  If ( autECLPSObj.autECLFieldList(1).Numeric ) Then
    ' do whatever
  Endif
Endif

HighIntensity

この集合要素プロパティーは、autECLFieldList 集合内の与えられたフィールドに 高輝度属性があるかどうかを示しています。HighIntensity は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  If ( autECLPSObj.autECLFieldList(1).HighIntensity ) Then
    ' do whatever
  Endif
Endif

PenDetectable

この集合要素プロパティーは、autECLFieldList 集合内の 与えられたフィールドにペン検出可能属性があるかどうかを 示しています。PenDetectable は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  If ( autECLPSObj.autECLFieldList(1).PenDetectable ) Then
    ' do whatever
  Endif
Endif

Display

この集合要素プロパティーは、autECLFieldList 集合内の与えられたフィールドに 表示属性があるかどうかを示します。Display は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh(1)
If (Not autECLPSObj.autECLFieldList.Count = 0 ) Then
  If ( autECLPSObj.autECLFieldList(1).Display ) Then
    ' do whatever
  Endif
Endif

autECLFieldList メソッド

以下のセクションで、autECLFieldList オブジェクトに 有効なメソッドを説明します。

void Refresh()
Object FindFieldByRowCol(Long Row, Long Col)
Object FindFieldByText(String text, [optional] Long Direction, [optional] Long StartRow,
  [optional] Long StartCol)

集合要素メソッド

以下の集合要素メソッドは、リスト内の各項目に有効です。

String GetText()
void SetText(String Text)

Refresh

Refresh メソッドは、 すべてのフィールドのスナップショットを取得します。

注:
確実に最新のフィールド・データを取得するには、 フィールド集合にアクセスする前に Refresh メソッドを呼び出さなければなりません。

プロトタイプ

void Refresh()

パラメーター

なし

戻り値

なし

以下の例は、所定の表示スペースについて、 すべてのフィールドのスナップショットを取得する方法を示しています。

Dim NumFields as long
Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and get the number of fields
autECLPSObj.autECLFieldList.Refresh()
NumFields = autECLPSObj.autECLFieldList.Count

FindFieldByRowCol

このメソッドは、所定の行および桁の 座標を含むフィールドを autECLFieldList オブジェクトで検索します。 戻される値は、autECLFieldList 集合の集合要素オブジェクトです。

プロトタイプ

Object FindFieldByRowCol(Long Row, Long Col)

パラメーター

Long Row
検索するフィールド行。
Long Col
検索するフィールド桁。

戻り値

Object
autECLFieldList 集合項目のディスパッチ・オブジェクト。

以下の例は、所定の行および桁の座標を含む フィールドを autECLFieldList オブジェクトで検索する方法を示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
Dim FieldElement as Object
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList)
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and search for field at row 2 col 1
autECLPSObj.autECLFieldList.Refresh(1)
Set FieldElement = autECLPSObj.autECLFieldList.FindFieldByRowCol( 2, 1 )
FieldElement.SetText("IBM")

FindFieldByText

このメソッドは、テキストと して渡されたストリングを含むフィールドを autECLFieldList オブジェクトで検索します。 戻される値は、autECLFieldList 集合の集合要素オブジェクトです。

プロトタイプ

Object FindFieldByText(String Text, [optional] Long Direction, [optional] Long StartRow, [optional] Long StartCol)

パラメーター

String Text
検索するテキスト・ストリング。
Long StartRow
検索を開始する表示スペース内の行位置。
Long StartCol
検索を開始する表示スペース内の桁位置。
Long Direction
検索の方向。 前方検索は 1、 後方検索は 2 を指定します。

戻り値

Object
autECLFieldList 集合項目のディスパッチ・オブジェクト。

以下の例は、テキストとして渡されたストリングを含むフィールド を autECLFieldList オブジェクトで検索する方法を示しています。

Dim autECLPSObj as Object
Dim autECLConnList as Object
Dim FieldElement as Object
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and search for field with text
autECLPSObj.autECLFieldList.Refresh(1)
set FieldElement = autECLPSObj.autECLFieldList.FindFieldByText "IBM"
 
' Or... search starting at row 2 col 1
set FieldElement = autECLPSObj.autECLFieldList.FindFieldByText "IBM", 2, 1
' Or... search starting at row 2 col 1 going backwards
set FieldElement = autECLPSObj.autECLFieldList.FindFieldByText "IBM", 2, 2, 1
 
FieldElement.SetText("Hello.")

GetText

集合要素メソッド GetText は、autECLFieldList 項目内の 所定のフィールドの文字を検索します。

プロトタイプ

String GetText()

パラメーター

なし

戻り値

String
フィールド・テキスト

以下の例は、GetText メソッドを使用する方法を示しています。

Dim autECLPSObj as Object
Dim TestStr as String
 
' Initialize the connection
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
autECLPSObj.autECLFieldList.Refresh()
TextStr = autECLPSObj.autECLFieldList(1).GetText()
 

SetText

このメソッドは、autECLFieldList 項目内の所定のフィールドに、 テキストとして渡された文字ストリングを入れます。このテキストがフィールドの長さを超える場合、テキストは 切り捨てられます。

プロトタイプ

void SetText(String Text)

パラメーター

String text
フィールドに設定するストリング。

戻り値

なし

以下の例は、autECLFieldList 項目内のフィールドに、 テキストとして渡された文字ストリングを入れる方法を示しています。

Dim NumFields as Long
Dim autECLPSObj as Object
Dim autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the list and set the first field with some text
autECLPSObj.autECLFieldList.Refresh(1)
autECLPSObj.autECLFieldList(1).SetText("IBM is a cool company")

autECLOIA クラス

autECLOIA オブジェクトは、 ホスト・オペレーター情報域から状況を検索します。 登録されている名前は、PCOMM.autECLOIA です。

最初に、作成したオブジェクトの接続を設定しなければなりません。 SetConnectionByName または SetConnectionByHandle を使用して、 オブジェクトを初期設定します。 接続は一度しか設定できません。 接続が設定された後は、接続設定メソッドをさらに呼び出すと例外を引き起こします。 また、接続を設定せずにプロパティーまたはメソッドにアクセスしようとしても、 例外が引き起こされます。

注:
autECLSession オブジェクト内の autECLOIA オブジェクト は、autECLSession オブジェクトにより設定されます。

以下の例は、Visual Basic で autECLOIA オブジェクトを作成し 設定する方法を示します。

DIM  autECLOIA as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
autECLOIA.SetConnectionByName("A")

プロパティー

このセクションでは、autECLOIA オブジェクトの プロパティーを説明します。

名前 属性
Boolean Alphanumeric 読み取り専用
Boolean APL 読み取り専用
Boolean Katakana 読み取り専用
Boolean Hiragana 読み取り専用
Boolean DBCS 読み取り専用
Boolean UpperShift 読み取り専用
Boolean Numeric 読み取り専用
Boolean CapsLock 読み取り専用
Boolean InsertMode 読み取り専用
Boolean CommErrorReminder 読み取り専用
Boolean MessageWaiting 読み取り専用
Long InputInhibited 読み取り専用
String Name 読み取り専用
Long Handle 読み取り専用
String ConnType 読み取り専用
Long CodePage 読み取り専用
Boolean Started 読み取り専用
Boolean CommStarted 読み取り専用
Boolean APIEnabled 読み取り専用
Boolean Ready 読み取り専用
Boolean NumLock 読み取り専用

Alphanumeric

このプロパティーは、オペレーター情報域を照会してカーソル位置のフィールドが 英数字かどうかを判別します。Alphanumeric は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
If autECLOIA.Alphanumeric Then...

APL

このプロパティーは、オペレーター情報域を照会して、キーボードが APL モードかどうかを 判別します。APL は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if the keyboard is in APL mode
if autECLOIA.APL Then...

Katakana

このプロパティーは、オペレーター情報域を照会してカタカナ文字が使用可能かどうかを 判別します。Katakana は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if Katakana characters are available
if autECLOIA.Katakana Then...

Hiragana

このプロパティーは、オペレーター情報域を照会して、ひらがな文字が使用可能かどうかを 判別します。Hiragana は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if Hiragana characters are available
if autECLOIA.Hiragana Then...

DBCS

このプロパティーは、オペレーター情報域を照会して、カーソル位置のフィールドが DBCS かどうかを 判別します。DBCS は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if DBCS is available
if autECLOIA.DBCS Then...

UpperShift

このプロパティーは、オペレーター情報域を照会して、キーボードが上段シフト・モードかどうかを 判別します。Uppershift は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if the keyboard is in uppershift mode
If autECLOIA.UpperShift then...

Numeric

このプロパティーは、オペレーター情報域を照会して、カーソル位置のフィールドが数字かどうかを 判別します。Numeric は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if the cursor location is a numeric field
If autECLOIA.Numeric Then...

CapsLock

このプロパティーは、オペレーター情報域を照会して、キーボード CapsLock キーがオンかどうかを 判別します。CapsLock は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if the caps lock
If autECLOIA.CapsLock Then...

InsertMode

このプロパティーは、オペレーター情報域を照会して、キーボードが挿入モードかどうかを 判別します。InsertMode は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if in insert mode
If autECLOIA.InsertMode Then...

CommErrorReminder

このプロパティーは、オペレーター情報域を照会して、通信エラー状況メッセージ条件が存在するかどうかを 判別します。CommErrorReminder は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if comm error
If autECLOIA.CommErrorReminder Then...

MessageWaiting

このプロパティーは、オペレーター情報域を照会して、 メッセージ待ち標識がオンかどうかを判別します。 これは、5250 接続にのみ起こります。 MessageWaiting は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if message waiting
If autECLOIA.MessageWaiting Then...

InputInhibited

このプロパティーは、オペレーター情報域を照会して、キーボード入力が使用禁止かどうかを 判別します。InputInhibited は、Long データ型で読み取り専用です。 以下の表は、InputInhibited に有効な値を示しています。

名前
使用可能 0
システム待機 1
通信チェック 2
プログラム・チェック 3
マシン・チェック 4
その他の禁止 5

以下の例は、このプロパティーを示しています。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Check if input inhibited
If not autECLOIA.InputInhibited = 0 Then...

Name

このプロパティーは、autECLOIA が設定された接続の 接続名ストリングです。 パーソナル・コミュニケーションズは、短い文字 ID (A から Z、または a から z) のみをストリングで戻します。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Name は、String データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Name as String
DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' Save the name
Name = Obj.Name

Handle

これは、autECLOIA オブジェクトが設定された接続のハンドルです。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Handle は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' Save the handle
Hand = Obj.Handle

ConnType

これは、autECLOIA が設定された接続タイプです。 このタイプは、時間の経過とともに変更する場合が あります。ConnType は、String データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Type as String
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
Obj.SetConnectionByName("A")
' Save the type
Type = Obj.ConnType

ConnType プロパティーの接続タイプは、以下のとおりです。

戻されるストリング 意味
DISP3270 3270 ディスプレイ
DISP5250 5250 ディスプレイ
PRNT3270 3270 プリンター
PRNT5250 5250 プリンター
ASCII VT エミュレーション

CodePage

これは、autECLOIA が設定された接続のコード・ページです。 このコード・ページは、時間の経過とともに変更される場合があります。CodePage は、Long データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  CodePage as Long
DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
Obj.SetConnectionByName("A")
' Save the code page
CodePage = Obj.CodePage

Started

これは、エミュレーター・ウィンドウが開始されたかどうかを示します。 ウィンドウがオープンしている場合、値は True です。 その他の場合は False です。Started は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is started.
' The results are sent to a text box called Result.
If Obj.Started = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

CommStarted

これは、ホストへの接続の状況を示しています。 ホストが接続されている場合、値は True です。 その他の場合は False です。CommStarted は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if communications are connected
' for A.  The results are sent to a text box called
' CommConn.
If Obj.CommStarted = False Then
    CommConn.Text = "No"
Else
    CommConn.Text = "Yes"
End If

APIEnabled

これは、エミュレーターが API 使用可能かどうかを示します。API 設定 (パーソナル・コミュニケーションズのウィンドウでは、 「ファイル」->「API の設定」を選択) の状態に応じて、 接続が可能な場合と、接続できない場合があります。エミュレーターが使用可能の場合には、True です。その他の場合には、False です。APIEnabled は、Boolean データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is API enabled.
' The results are sent to a text box called Result.
If Obj.APIEnabled = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

Ready

これは、エミュレーター・ウィンドウが 開始されていて、API 使用可能で、そして接続されているかどうかを示します。 このプロパティーは、3 つのすべてのプロパティーを確認します。 エミュレーターが準備できている場合には、値は True です。 その他の場合には、False です。Ready は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is ready.
' The results are sent to a text box called Result.
If Obj.Ready = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

NumLock

このプロパティーは、オペレーター情報域を照会して、 キーボード NumLock キーがオンかどうかを判別します。NumLock は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM autECLOIA as Object
    DIM autECLConnList as Object
    
    Set autECLOIA = CreateObject ("PCOMM.autECLOIA")
Set autECLConnList = CreateObject ("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByFHandle (autECLConnList (1) .Handle)
 
' Check if the num lock is on
If autECLOIA.NumLock Then . . .

autECLOIA メソッド

以下のセクションで、autECLOIA に有効なメソッドを説明します。

void RegisterOIAEvent()
void UnregisterOIAEvent()
void SetConnectionByName (String Name)
void SetConnectionByHandle (Long Handle)
void StartCommunication()
void StopCommunication()
Boolean WaitForInputReady([optional] Variant TimeOut)
Boolean WaitForSystemAvailable([optional] Variant TimeOut)
Boolean WaitForAppAvailable([optional] Variant TimeOut)
Boolean WaitForTransition([optional] Variant Index, [optional] Variant timeout)
void CancelWaits()

RegisterOIAEvent

このメソッドは、すべての OIA イベントの通知を受け取るためにオブジェクトを登録します。

プロトタイプ

void RegisterOIAEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterOIAEvent

OIA イベント処理を終了します。

プロトタイプ

void UnregisterOIAEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

SetConnectionByName

この SetConnectionByName メソッドは、接続名を使用して、 新しく作成された autECLOIA オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続名は、短い接続 ID (文字 A から Z、または a から z) です。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

注:
autECLSession 内で autECLOIA オブジェクトを使用している場合には、 これを呼び出さないでください。

プロトタイプ

void SetConnectionByName (String Name)

パラメーター

String Name
1 文字の接続のストリング短縮名 (A から Z、または a から z)。

戻り値

なし

以下の例は、新しく作成された autECLOIA オブジェクトの接続を設定するために、 接続ハンドルを使用する方法を示します。

DIM  autECLOIA as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
 
' Initialize the connection
autECLOIA.SetConnectionByName("A")
' For example, see if its num lock is on
If ( autECLOIA.NumLock = True ) Then
  'your logic here...
Endif

SetConnectionByHandle

この SetConnectionByHandle メソッドは、 接続ハンドルを使用して、新しく作成された autECLOIA オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続ハンドルは Long integer です。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

注:
autECLSession 内で autECLOIA オブジェクトを使用している場合には、 これを呼び出さないでください。

プロトタイプ

void SetConnectionByHandle(Long Handle)

パラメーター

Long Handle
オブジェクトに設定される接続の Long integer 値。

戻り値

なし

以下の例は、接続ハンドルを使用して、新しく作成された autELCOIA オブジェクトの接続を 設定する方法を示します。

DIM  autECLOIA as Object
DIM  autECLConnList as Object
 
Set autECLOIA = CreateObject("PCOMM.autECLOIA")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLOIA.SetConnectionByHandle(autECLConnList(1).Handle)
' For example, see if its num lock is on
If ( autECLOIA.NumLock = True ) Then
  'your logic here...
Endif

StartCommunication

StartCommunication 集合要素メソッドは、 ホスト・データ・ストリームに PCOMM エミュレーターを接続します。 これは、PCOMM エミュレーター「通信」メニューを表示して「接続」を選んだ場合と同じ結果になります。

プロトタイプ

void StartCommunication()

パラメーター

なし

戻り値

なし

なし

Dim OIAObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set OIAObj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the session
autECLConnList.Refresh
OIAObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
OIAObj.StartCommunication()

StopCommunication

StopCommunication 集合要素メソッドは、 ホスト・データ・ストリームから PCOMM エミュレーターを切断します。 これは、PCOMM エミュレーターの「通信」メニューを表示して 「切断」を選んだ場合 と同じ結果になります。

プロトタイプ

void StopCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim OIAObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set OIAObj = CreateObject("PCOMM.autECLOIA")
 
' Initialize the session
autECLConnList.Refresh
OIAObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
OIAObj.StopCommunication()

WaitForInputReady

WaitForInputReady メソッドは、autECLOIA オブジェクトに関連した接続の OIA が、 この接続にキーボード入力の受け入れが可能であることを示すまで待機します。

プロトタイプ

Boolean WaitForInputReady([optional] Variant TimeOut)

パラメーター

Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLOIAObj as Object
 
Set autECLOIAObj = CreateObject("PCOMM.autECLOIA")
autECLOIAObj.SetConnectionByName("A")
 
if (autECLOIAObj.WaitForInputReady(10000)) then
msgbox "Ready for input"
else
msgbox "Timeout Occurred"
end if

WaitForSystemAvailable

WaitForSystemAvailable メソッドは、autECLOIA オブジェクトに関連した接続の OIA が、 その接続がホスト・システムに接続されていると指示するまで待機します。

プロトタイプ

Boolean WaitForSystemAvailable([optional] Variant TimeOut)

パラメーター

Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLOIAObj as Object
 
Set autECLOIAObj = CreateObject("PCOMM.autECLOIA")
autECLOIAObj.SetConnectionByName("A")
 
if (autECLOIAObj.WaitForSystemAvailable(10000)) then
msgbox "System Available"
else
msgbox "Timeout Occurred"
end if

WaitForAppAvailable

WaitForAppAvailable メソッドは、autECLOIA オブジェクトに関連した接続の OIA が そのアプリケーションが処理中であることを示しているまで待機します。

プロトタイプ

Boolean WaitForAppAvailable([optional] Variant TimeOut)

パラメーター

Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLOIAObj as Object
 
Set autECLOIAObj = CreateObject("PCOMM.autECLOIA")
autECLOIAObj.SetConnectionByName("A")
 
if (autECLOIAObj.WaitForAppAvailable (10000)) then
msgbox "Application is available"
else
msgbox "Timeout Occurred"
end if

WaitForTransition

WaitForTransition メソッドは、autECLOIA オブジェクトに関連した接続の 指定された OIA 位置が変更されるのを待ちます。

プロトタイプ

Boolean WaitForTransition([optional] Variant Index, [optional] Variant timeout)

パラメーター

Variant Index
モニターする OIA の 1 バイトの 16 進数位置。このパラメーターはオプションです。デフォルト値は 3 です。
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLOIAObj as Object
Dim Index 
 
Index = 03h
 
Set autECLOIAObj = CreateObject("PCOMM.autECLOIA")
autECLOIAObj.SetConnectionByName("A")
 
if (autECLOIAObj.WaitForTransition(Index,10000)) then
    msgbox "Position " " Index " " of the OIA Changed"
else
    msgbox "Timeout Occurred"
end if

CancelWaits

現在活動待ちのメソッドを取り消します。

プロトタイプ

void CancelWaits()

パラメーター

なし

戻り値

なし

autECLOIA イベント

以下のイベントは autECLOIA に有効です。

void NotifyOIAEvent()
void NotifyOIAError()
void NotifyOIAStop(Long Reason)

NotifyOIAEvent

所定の OIA が発生しました。

プロトタイプ

void NotifyOIAEvent()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyOIAError

このイベントは、OIA にエラーの発生したときに発生します。

プロトタイプ

void NotifyOIAError()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyOIAStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyOIAStop(Long Reason)

パラメーター

Long Reason
停止を表す Long Reason コード。現在は、これは常に 0 です。

イベント処理の例

以下は、OIA イベントの実装方法についての簡単な例です。

Option Explicit
Private WithEvents myOIA As autECLOIA 'AutOIA added as reference
 
sub main()
'Create Objects
Set myOIA = New AutOIA 
 
Set myConnMgr = New AutConnMgr

myOIA.SetConnectionByName ("B") 'Monitor Session B for OIA Updates
 
myOIA.RegisterOIAEvent 'register for OIA Notifications
 
' Display your form or whatever here  (this should be a blocking call, otherwise sub just ends
call DisplayGUI()
 
'Clean up
myOIA.UnregisterOIAEvent 
 
Private Sub myOIA_NotifyOIAEvent()
' do your processing here 
End Sub
Private Sub myOIA_NotifyOIAError()
' do your processing here 
End Sub
 'This event occurs when Communications Status Notification ends
Private Sub myOIA_NotifyOIAStop(Reason As Long)
'Do any stop processing here
End Sub

autECLPS クラス

autECLPS は、表示スペースでの操作を実行します。 登録されている名前は、PCOMM.autECLPS です。

最初に、作成したオブジェクトの接続を設定しなければなりません。 SetConnectionByName または SetConnectionByHandle を使用して、 オブジェクトを初期設定します。 接続は一度しか設定できません。 接続が設定された後は、SetConnection メソッドをさらに呼び出すと例外を引き起こします。 また、接続を設定せずにプロパティーまたはメソッドにアクセスしようとしても、 例外が引き起こされます。

注:
  1. 表示スペース内で、最初の行座標は行 1 で、 最初の桁座標は桁 1 です。したがって、最上行の左端の位置は、行 1 桁 1 になります。
  2. autECLSession オブジェクト内の autECLPS オブジェクトは、 autECLSession オブジェクトにより設定されます。

以下に示すのは、Visual Basic で autECLPS オブジェクトを作成し設定する方法の例です。

DIM  autECLPSObj as Object
DIM  NumRows as Long
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
' Initialize the connection
autECLPSObj .SetConnectionByName("A")
' For example, get the number of rows in the PS
NumRows = autECLPSObj.NumRows

プロパティー

このセクションでは、autECLPS オブジェクトのプロパティーを説明します。

名前 属性
Object autECLFieldList 読み取り専用
Long NumRows 読み取り専用
Long NumCols 読み取り専用
Long CursorPosRow 読み取り専用
Long CursorPosCol 読み取り専用
String Name 読み取り専用
Long Handle 読み取り専用
String ConnType 読み取り専用
Long CodePage 読み取り専用
Boolean Started 読み取り専用
Boolean CommStarted 読み取り専用
Boolean APIEnabled 読み取り専用
Boolean Ready 読み取り専用

autECLFieldList

これは、autECLPS オブジェクトに関連する 接続のフィールド集合オブジェクトです。 詳細は、autECLFieldList クラスを参照してください。 以下の例は、このオブジェクトを示しています。

Dim  autECLPSObj as Object
Dim  autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' Build the field list
CurPosCol = autECLPSObj.autECLFieldList.Refresh(1)

NumRows

これは、autECLPS オブジェクトに関連する接続の表示スペースでの 行の数です。NumRows は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLPSObj as Object
Dim  autECLConnList as Object
Dim  Rows as Long
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
Rows = autECLPSObj.NumRows

NumCols

これは、autECLPS オブジェクトに関連する接続の表示スペースでの 桁の数です。NumCols は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLPSObj as Object
Dim  autECLConnList as Object
Dim  Cols as Long
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
Cols = autECLPSObj.NumCols

CursorPosRow

これは、autECLPS オブジェクトに関連する接続の表示スペースでの カーソルの現在行位置です。CursorPosRow は Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLPSObj as Object
Dim  autECLConnList as Object
Dim  CurPosRow as Long
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
CurPosRow = autECLPSObj.CursorPosRow

CursorPosCol

これは、autECLPS オブジェクトに関連する接続の表示スペースでの カーソルの現在桁位置です。CursorPosCol は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLPSObj as Object
Dim  autECLConnList as Object
Dim  CurPosCol as Long
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
CurPosCol = autECLPSObj.CursorPosCol

Name

これは、autECLPS が設定された接続の接続名ストリングです。 パーソナル・コミュニケーションズは、短い文字 ID (A から Z、または a から z) のみをストリングで戻します。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Name は、String データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Name as String
DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' Save the name
Name = Obj.Name

Handle

これは、autECLPS オブジェクトが設定された接続のハンドルです。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Handle は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' Save the connection handle
Hand = Obj.Handle

ConnType

これは、autECLPS が設定された接続タイプです。 この接続タイプは、時間の経過とともに変更する場合があります。ConnType は、String データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Type as String
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
Obj.SetConnectionByName("A")
' Save the type
Type = Obj.ConnType

ConnType プロパティーの接続タイプは、以下のとおりです。

戻されるストリング 意味
DISP3270 3270 ディスプレイ
DISP5250 5250 ディスプレイ
PRNT3270 3270 プリンター
PRNT5250 5250 プリンター
ASCII VT エミュレーション

CodePage

これは、autECLPS が設定された接続のコード・ページです。 このコード・ページは、時間の経過とともに変更される場合があります。CodePage は、Long データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  CodePage as Long
DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
Obj.SetConnectionByName("A")
' Save the code page
CodePage = Obj.CodePage

Started

これは、接続エミュレーター・ウィンドウが開始されたか どうかを示します。ウィンドウがオープンしている場合、値は True です。 その他の場合は False です。Started は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is started.
' The results are sent to a text box called Result.
If Obj.Started = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

CommStarted

これは、ホストへの接続の状況を示しています。 ホストが接続されている場合、値は True です。 その他の場合は False です。CommStarted は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if communications are connected
' for A.  The results are sent to a text box called
' CommConn.
If Obj.CommStarted = False Then
    CommConn.Text = "No"
Else
    CommConn.Text = "Yes"
End If

APIEnabled

これは、エミュレーターが API 使用可能かどうかを示します。API 設定 (パーソナル・コミュニケーションズのウィンドウでは、 「ファイル」->「API の設定」を選択) の状態に応じて、 接続が可能な場合と、接続できない場合があります。API が使用可能の場合、値は True です。 その他の場合は False です。APIEnabled は、Boolean データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is API enabled.
' The results are sent to a text box called Result.
If Obj.APIEnabled = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

Ready

これは、エミュレーター・ウィンドウが 開始されていて、API 使用可能で、そして接続されているかどうかを示します。 これは、3 つのすべてのプロパティーを確認します。 エミュレーターが準備できている場合には、値は True です。 その他の場合には、False です。Ready は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is ready.
' The results are sent to a text box called Result.
If Obj.Ready = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

autECLPS メソッド

以下のセクションで、autECLPS オブジェクトに有効なメソッドを 説明します。

void RegisterPSEvent()
void RegisterKeyEvent()
void RegisterCommEvent()
void UnregisterPSEvent()
void UnregisterKeyEvent()
void UnregisterCommEvent()
void SetConnectionByName (String Name)
void SetConnectionByHandle (Long Handle)
void SetCursorPos(Long Row, Long Col)
void SendKeys(String text, [optional] Long row, [optional] Long col)
Boolean SearchText(String text, [optional] Long Dir, [optional] Long row,
       [optional] Long col)
String GetText([optional] Long row, [optional] Long col, [optional] Long lenToGet)
void SetText(String Text, [optional] Long Row, [optional] Long Col)
String GetTextRect(Long StartRow, Long StartCol, Long EndRow, Long EndCol )
void StartCommunication()
void StopCommunication()
void StartMacro(String MacroName)
void Wait(milliseconds as Long)
Boolean WaitForCursor(Variant Row, Variant Col, [optional]Variant TimeOut,
       [optional] Boolean bWaitForIr)
Boolean WaitWhileCursor(Variant Row, Variant Col, [optional]Variant TimeOut,
       [optional] Boolean bWaitForIr)
Boolean WaitForString(Variant WaitString, [optional] Variant Row,
       [optional] Variant Col, [optional] Variant TimeOut, [optional] Boolean bWaitForIr,
       [optional] Boolean bCaseSens)
Boolean WaitWhileString(Variant WaitString, [optional] Variant Row,
       [optional] Variant Col, [optional] Variant TimeOut, [optional] Boolean bWaitForIr,
       [optional] Boolean bCaseSens)
Boolean WaitForStringInRect(Variant WaitString, Variant sRow, Variant sCol,
       Variant eRow, Variant eCol, [optional] Variant nTimeOut,
       [optional] Boolean bWaitForIr, [optional] Boolean bCaseSens)
Boolean WaitWhileStringInRect(Variant WaitString, Variant sRow, Variant sCol,
       Variant eRow, Variant eCol, [optional] Variant nTimeOut,
       [optional] Boolean bWaitForIr, [optional] Boolean bCaseSens)
Boolean WaitForAttrib(Variant Row, Variant Col, Variant WaitData,
       [optional] Variant MaskData, [optional] Variant plane, [optional] Variant TimeOut,
       [optional] Boolean bWaitForIr)
Boolean WaitWhileAttrib(Variant Row, Variant Col, Variant WaitData,
       [optional] Variant MaskData, [optional] Variant plane,
       [optional] Variant TimeOut, [optional] Boolean bWaitForIr)
Boolean WaitForScreen(Object screenDesc, [optional] Variant TimeOut)
Boolean WaitWhileScreen(Object screenDesc, [optional] Variant TimeOut)
void CancelWaits()

RegisterPSEvent

このメソッドは、接続されたセッションの PS に対するすべての変更の通知を 受け取るための autECLPS オブジェクトを登録します。

プロトタイプ

void RegisterPSEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

RegisterKeyEvent

キー・ストローク・イベント処理を開始します。

プロトタイプ

void RegisterKeyEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

RegisterCommEvent

このメソッドは、すべての通信リンク接続/接続解除のイベントの通知を受け取るための オブジェクトを登録します。

プロトタイプ

void RegisterCommEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterPSEvent

PS イベント処理を終了します。

プロトタイプ

void UnregisterPSEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterKeyEvent

キー・ストローク・イベント処理を終了します。

プロトタイプ

void UnregisterKeyEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterCommEvent

通信リンク・イベント処理を終了します。

プロトタイプ

void UnregisterCommEvent()

パラメーター

なし

戻り値

なし

SetConnectionByName

このメソッドは、接続名を使用して、 新しく作成された autECLPS オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続名は、短い ID (文字 A から Z、または a から z) です。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

注:
autECLSession 内で autECLPS オブジェクトを使用している場合は、 これを呼び出さないでください。

プロトタイプ

void SetConnectionByName (String Name)

パラメーター

String Name
1 文字の接続のストリング短縮名 (A から Z、または a から z)。

戻り値

なし

以下の例は、接続名を使用して、新しく作成された autECLPS オブジェクトの接続を 設定する方法を示します。

DIM  autECLPSObj as Object
DIM  NumRows as Long
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
 
' Initialize the connection
autECLPSObj.SetConnectionByName("A")
' For example, get the number of rows in the PS
NumRows = autECLPSObj.NumRows

SetConnectionByHandle

このメソッドは、接続ハンドルを使用して、 新しく作成された autECLPS オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続ハンドルは Long integer です。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

注:
autECLSession 内で autECLPS オブジェクトを使用している場合は、 これを呼び出さないでください。

プロトタイプ

void SetConnectionByHandle(Long Handle)

パラメーター

Long Handle
オブジェクトに設定される接続の Long integer 値。

戻り値

なし

以下の例は、新しく作成された autECLPS オブジェクトの接続を、 接続ハンドルを使用して設定する方法を示します。

DIM  autECLPSObj as Object
DIM  autECLConnList as Object
DIM  NumRows as Long
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection with the first in the list
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
' For example, get the number of rows in the PS
NumRows = autECLPSObj.NumRows

SetCursorPos

SetCursorPos メソッドは、autECLPS オブジェクト に関連する接続の表示スペースでのカーソルの位置を設定します。 位置設定は、行および桁単位です。

プロトタイプ

void SetCursorPos(Long Row, Long Col)

パラメーター

Long Row
表示スペースでのカーソルの行位置。
Long Col
表示スペースでのカーソルの桁位置。

戻り値

なし

以下の例は、autECLPS オブジェクトに関連する接続の表示スペースでの カーソルの位置を設定する方法を示しています。

DIM  autECLPSObj as Object
DIM  autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection with the first in the list
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
autECLPSObj.SetCursorPos 2, 1

SendKeys

SendKeys メソッドは、キーのストリング を autECLPS オブジェクトに関連する接続の表示スペースに送信します。 このメソッドによって、略号キー・ストロークを表示スペースに送信できます。 これらのキー・ストロークのリストは、付録A. Sendkeys 略号キーワードを参照してください。

プロトタイプ

void SendKeys(String text, [optional] Long row, [optional] Long col)

パラメーター

String text
表示スペースに送るキー・ストリング。
Long Row
表示スペースにキーを送信する行位置。 このパラメーターはオプションです。デフォルト値は、現在のカーソルの行位置です。 row を指定した場合は、col も指定しなければなりません。
Long Col
表示スペースにキーを送信する桁位置。 このパラメーターはオプションです。デフォルト値は、現在のカーソルの桁位置です。col を指定した場合は、row も指定しなければなりません。

戻り値

なし

以下の例は、SendKeys メソッドを使用して、autECLPS オブジェクトに関連する 接続の表示スペースにキーのストリングを送信する方法を示しています。

Dim  autECLPSObj as Object
Dim  autECLConnList as Object
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
autECLPSObj.SendKeys "IBM is a really cool company", 3, 1

SearchText

SearchText メソッドは、autECLPS オブジェクトに関連する 接続の表示スペースでのテキストの最初の出現を検索します。 この検索では、大/小文字の区別をします。テキストが見つかった場合、メソッドは True 値を戻します。 テキストが見つからなかった場合は、False 値を戻します。 オプションの行および桁パラメーターが使用された場合には、 row および col も戻され、 見つかった場合はテキストの位置を示します。

プロトタイプ

boolean SearchText(String text, [optional] Long Dir, [optional] Long Row, [optional] Long Col)

パラメーター

String text
検索するストリング。
Long Dir
検索の方向。 前方検索の 1 か、 後方検索の 2 のどちらかを指定しなければなりません。 このパラメーターはオプションです。デフォルト値は、前方検索の 1 です。
Long Row
表示スペース内で検索を開始する行位置。 検索が成功した場合、見つかったテキストの行が戻されます。 このパラメーターはオプションです。row を指定した場合は、col も指定しなければなりません。
Long Col
表示スペース内で検索を開始する桁位置。 検索が成功した場合 、見つかったテキストの桁が戻されます。 このパラメーターはオプションです。col を指定した場合は、row も指定しなければなりません。

戻り値

テキストが見つかった場合には True、 見つからなかった場合には False が戻されます。

以下の例は、autECLPS オブジェクトに関連する接続について、 表示スペース内のテキストを検索する方法を示しています。

Dim  autECLPSObj as Object
Dim  autECLConnList as Object
Dim  Row as Long
Dim  Col as Long
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
// Search forward in the PS from the start of the PS.  If found
// then call a hypothetical found routine, if not found, call a hypothetical
 
// not found routine.
row = 3
col = 1
If ( autECLPSObj.SearchText "IBM", 1, row, col) Then
  Call FoundFunc (row, col)
Else
  Call NotFoundFunc
Endif

GetText

GetText メソッドは、autECLPS オブジェクトに関連する 接続の表示スペースから文字を検索します。

プロトタイプ

String GetText([optional] Long Row, [optional] Long Col, [optional] Long LenToGet)

パラメーター

Long Row
表示スペースで検索を開始する行位置。 このパラメーターはオプションです。
Long Col
表示スペースで検索を開始する桁位置。 このパラメーターはオプションです。
Long LenToGet
表示スペースから検索する文字数。このパラメーターはオプションです。デフォルト値は、BuffLen として渡される配列の長さです。

戻り値

String
PS からのテキスト。

以下の例は、autECLPS オブジェクトに関連する接続について、 表示スペースからストリングを検索する方法を示しています。

Dim  autECLPSObj as Object
Dim  PSText as String
 
' Initialize the connection
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
PSText = autECLPSObj.GetText(2,1,50)
 

SetText

SetText メソッドは、autECLPS オブジェクトに関連した 接続用の表示スペースにストリングを送信します。 このメソッドは SendKeys メソッドに類似しているものの、 このメソッドでは略号キー・ストローク (例えば、[enter] または [pf1]) は送信しません。

プロトタイプ

void SetText(String Text, [optional] Long Row, [optional] Long Col)

パラメーター

String Text
送信する文字配列。
Long Row
表示スペースで検索を開始する行。 このパラメーターはオプションです。デフォルト値は、現在のカーソルの行位置です。
Long Col
表示スペースで検索を開始する桁位置。 このパラメーターはオプションです。デフォルト値は、現在のカーソルの桁位置です。

戻り値

なし

以下の例は、autECLPS オブジェクトに関連する接続について、 表示スペース内のテキストを検索する方法を示しています。

Dim autECLPSObj as Object
 
'Initialize the connection
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
autECLPSObj.SetText"IBM is great", 2, 1

GetTextRect

GetTextRect メソッドは、autECLPS オブジェクトに関連する 接続の表示スペースの長方形域から文字を検索します。 テキスト検索では折り返しは実行されません。長方形域のみ検索されます。

プロトタイプ

String GetTextRect(Long StartRow, Long StartCol, Long EndRow, Long EndCol)

パラメーター

Long StartRow
表示スペースで検索を開始する行。
Long StartCol
表示スペースで検索を開始する桁。
Long EndRow
表示スペースで検索を終了する行。
Long EndCol
表示スペースで検索を終了する桁。

戻り値

String
PS テキスト

以下の例は、autECLPS オブジェクトに関連する接続について、 表示スペース内の長方形域から文字を検索する方法を示しています。

Dim  autECLPSObj as Object
Dim  PSText String
 
' Initialize the connection
Set autECLPSObj = CreateObject ("PCOMM.autELCPS")
autECLPSObj.SetConnectionByName("A")
 
PSText = GetTextRect(1,1,2,80)
 

SetTextRect

SetTextRect メソッドは、autECLPS オブジェクトに関連する接続の表示スペース内の長方形域に文字を設定します。テキスト設定では折り返しは実行されません。長方形域のみ設定されます。

プロトタイプ

SetTextRect(String Text, Long StartRow, Long StartCol, Long EndRow, Long EndCol)

パラメーター

String Text
表示スペースに設定する文字配列。
Long StartRow
表示スペースで設定を開始する行。
Long StartCol
表示スペースで設定を開始する桁。
Long EndRow
表示スペースで設定を終了する行。
Long EndCol
表示スペースで設定を終了する桁。

戻り値

なし

以下の例は、autECLPS オブジェクトに関連する接続の表示スペース内の長方形域に文字を設定する方法を示しています。

Dim autECLPSObj as Object 
Dim PSText String 

' Initialize the connection 
Set autECLPSObj = CreateObject ("PCOMM.autELCPS") 
autECLPSObj.SetConnectionByName("A") 

SetTextRect "IBM is great company to collaborate with", 1, 1, 4, 8

括弧を使用する場合は、以下のように SetTextRect を使用します。

call SetTextRect("IBM is great company to collaborate with", 1, 1, 4, 8)

StartCommunication

StartCommunication 集合要素メソッドは、 ホスト・データ・ストリームに PCOMM エミュレーターを接続します。 これは、PCOMM エミュレーター「通信」メニューを表示して「接続」を選んだ場合と同じ結果になります。

プロトタイプ

void StartCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim PSObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set PSObj = CreateObject("PCOMM.autECLPS")
 
' Initialize the session
autECLConnList.Refresh
PSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
PSObj.StartCommunication()

StopCommunication

StopCommunication 集合要素メソッドは、 ホスト・データ・ストリームから PCOMM エミュレーターを切断します。 これは、PCOMM エミュレーターの「通信」メニューを表示して 「切断」を選んだ場合 と同じ結果になります。

プロトタイプ

void StopCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim PSObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set PSObj = CreateObject("PCOMM.autECLPS")
 
' Initialize the session
autECLConnList.Refresh
PSObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
PSObj.StopCommunication()

StartMacro

StartMacro メソッドは、MacroName パラメーターにより指示された パーソナル・コミュニケーションズのマクロ・ファイルを実行します。

プロトタイプ

void StartMacro(String MacroName)

パラメーター

String MacroName
パーソナル・コミュニケーションズのユーザー・クラス・アプリケーション・データ・ディレクトリー (インストール時に指定) に入っているマクロ・ファイルの名前でファイル拡張子を持っていない。 このメソッドは、 長いファイル名をサポートしません。

戻り値

なし

使用上の注意

マクロ名には、短いファイル名を使用する必要があります。このメソッドは、 長いファイル名をサポートしません。

以下の例は、マクロを開始する方法を示しています。

Dim PS as Object
 
Set PS = CreateObject("PCOMM.autECLPS")
PS.StartMacro "mymacro"
 

Wait

Wait メソッドは、milliseconds パラメーターで指定されたミリ秒間 待機します。

プロトタイプ

void Wait(milliseconds as Long)

パラメーター

Long milliseconds
待機するミリ秒数。

戻り値

なし

Dim autECLPSObj as Object
 
Set autECLPSObj = CreateObject ("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName ("A")
 
' Wait for 10 seconds
autECLPSObj.Wait(10000) 

WaitForCursor

WaitForCursor メソッドは、autECLPS オブジェクトに関連した 接続の表示スペースでカーソルが指定された位置に配置されるのを待ちます。

プロトタイプ

Boolean WaitForCursor(Variant Row, Variant Col, [optional]Variant TimeOut,
       [optional] Boolean bWaitForIr)

パラメーター

Variant Row
カーソルの行位置。
Variant Col
カーソルの桁位置。
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。
Boolean bWaitForIr
この値が True である場合、待ち条件の基準を満たすと、関数は OIA の入力受け入れ準備 ができるまで待機します。このパラメーターはオプションです。デフォルト値は False です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim Row, Col
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
Row = 20
Col = 16
 
if (autECLPSObj.WaitForCursor(Row,Col,10000)) then
    msgbox "Cursor is at " " Row " "," " Col
else
    msgbox "Timeout Occurred"
end if

WaitWhileCursor

WaitWhileCursor メソッドは、autECLPS オブジェクトに関連した接続の 表示スペースでカーソルが指定された位置に配置されている間待機します。

プロトタイプ

Boolean WaitWhileCursor(Variant Row, Variant Col, [optional]Variant TimeOut,
[optional] Boolean bWaitForIr)

パラメーター

Variant Row
カーソルの行位置。
Variant Col
カーソルの桁位置。
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。
Boolean bWaitForIr
この値が True である場合、待ち条件の基準を満たすと、関数は OIA の入力受け入れ準備 ができるまで待機します。このパラメーターはオプションです。デフォルト値は False です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim Row, Col
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
Row = 20
Col = 16
 
if (autECLPSObj.WaitWhileCursor(Row,Col,10000)) then
     msgbox "Cursor is no longer at " " Row " "," " Col
else
     msgbox "Timeout Occurred"
end if

WaitForString

WaitForString メソッドは、autECLPS オブジェクトに関連した接続の 表示スペースで、指定されたストリングが現れるのを待ちます。 オプションの行パラメーターおよび桁パラメーターが 使用される場合は、ストリングは指定された位置から開始しなければなりません。 行と桁に、それぞれ 0 が渡された場合は、メソッドは PS 全体を探索します。

プロトタイプ

Boolean WaitForString(Variant WaitString, [optional] Variant Row,
       [optional] Variant Col, [optional] Variant TimeOut, [optional] Boolean bWaitForIr,
       [optional] Boolean bCaseSens)

パラメーター

Variant WaitString
待機の対象となるストリング。
Variant Row
ストリングが開始する行位置。このパラメーターはオプションです。デフォルト値は 0 です。
Variant Col
ストリングが開始する桁位置。このパラメーターはオプションです。デフォルト値は 0 です。
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。
Boolean bWaitForIr
この値が True である場合、待ち条件の基準を満たすと、関数は OIA の入力受け入れ準備 ができるまで待機します。このパラメーターはオプションです。デフォルト値は False です。
Boolean bCaseSens
この値が True の場合は、待ち条件は大/小文字の区別があるものとして検査されます。 このパラメーターはオプションです。デフォルト値は False です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim Row, Col, WaitString
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
WaitString = "Enter USERID"
Row = 20
Col = 16
 
if (autECLPSObj.WaitForString(WaitString,Row,Col,10000))  then
    msgbox WaitString " " found at " " Row " "," " Col
else
    msgbox "Timeout Occurred"
end if

WaitWhileString

WaitWhileString メソッドは、指定されたストリングが autECLPS オブジェクトに関連した接続の 表示スペースに現れている間待機します。 オプションの行パラメーターおよび桁パラメーターが 使用される場合は、ストリングは指定された位置から開始しなければなりません。 行と桁に、それぞれ 0 が渡された場合は、メソッドは PS 全体を探索します。

プロトタイプ

Boolean WaitWhileString(Variant WaitString, [optional] Variant Row,
       [optional] Variant Col, [optional] Variant TimeOut, [optional] Boolean bWaitForIr,
       [optional] Boolean bCaseSens)

パラメーター

Variant WaitString
このストリング値が存在している間、メソッドは待機します。
Variant Row
ストリングが開始する行位置。このパラメーターはオプションです。デフォルト値は 0 です。
Variant Col
ストリングが開始する桁位置。このパラメーターはオプションです。デフォルト値は 0 です。
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。
Boolean bWaitForIr
この値が True である場合、待ち条件の基準を満たすと、関数は OIA の入力受け入れ準備 ができるまで待機します。このパラメーターはオプションです。デフォルト値は False です。
Boolean bCaseSens
この値が True の場合は、待ち条件は大/小文字の区別があるものとして検査されます。 このパラメーターはオプションです。デフォルト値は False です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim Row, Col, WaitString
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
WaitString = "Enter USERID"
Row = 20
Col = 16
 
if (autECLPSObj.WaitWhileString(WaitString,Row,Col,10000))  then
    msgbox WaitString " " was found at " " Row " "," " Col
else
    msgbox "Timeout Occurred"
end if

WaitForStringInRect

WaitForStringInRect メソッドは、指定された長方形内の autECLPS オブジェクトに関連した 接続の表示スペースで、指定されたストリングが現れるのを待ちます。

プロトタイプ

Boolean WaitForStringInRect(Variant WaitString, Variant sRow, Variant sCol,
       Variant eRow, Variant eCol, [optional] Variant nTimeOut,
       [optional] Boolean bWaitForIr, [optional] Boolean bCaseSens)

パラメーター

Variant WaitString
待機の対象となるストリング。
Variant sRow
長方形探索を開始する行位置。
Variant sCol
長方形探索を開始する桁位置。
Variant eRow
長方形探索を終了する行位置。
Variant eCol
長方形探索を終了する桁位置。
Variant nTimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。
Boolean bWaitForIr
この値が True である場合、待ち条件の基準を満たすと、関数は OIA の入力受け入れ準備 ができるまで待機します。このパラメーターはオプションです。デフォルト値は False です。
Boolean bCaseSens
この値が True の場合は、待ち条件は大/小文字の区別があるものとして検査されます。 このパラメーターはオプションです。デフォルト値は False です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim sRow, sCol, eRow, eCol, WaitString
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
WaitString = "Enter USERID"
sRow = 20
sCol = 16
eRow = 21
eCol = 31
 
if (autECLPSObj.WaitForStringInRect(WaitString,sRow,sCol,eRow,eCol,10000))  then
    msgbox WaitString " " found in rectangle"
else
    msgbox "Timeout Occurred"
end if

WaitWhileStringInRect

WaitWhileStringInRect メソッドは、指定されたストリングが指定長方形内の autECLPS オブジェクト に関連した接続の表示スペースに現れている間待機します。

プロトタイプ

Boolean WaitWhileStringInRect(Variant WaitString, Variant sRow, Variant sCol,
       Variant eRow, Variant eCol, [optional] Variant nTimeOut,
       [optional] Boolean bWaitForIr, [optional] Boolean bCaseSens)

パラメーター

Variant WaitString
このストリング値が存在している間、メソッドは待機します。
Variant sRow
長方形探索を開始する行位置。
Variant sCol
長方形探索を開始する桁位置。
Variant eRow
長方形探索を終了する行位置。
Variant eCol
長方形探索を終了する桁位置。
Variant nTimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。
Boolean bWaitForIr
この値が True である場合、待ち条件の基準を満たすと、関数は OIA の入力受け入れ準備 ができるまで待機します。このパラメーターはオプションです。デフォルト値は False です。
Boolean bCaseSens
この値が True の場合は、待ち条件は大/小文字の区別があるものとして検査されます。 このパラメーターはオプションです。デフォルト値は False です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim sRow, sCol, eRow, eCol, WaitString
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
WaitString = "Enter USERID"
sRow = 20
sCol = 16
eRow = 21
eCol = 31
 
if (autECLPSObj.WaitWhileStringInRect(WaitString,sRow,sCol,eRow,eCol,10000))  then
    msgbox WaitString " " no longer in rectangle"
else
    msgbox "Timeout Occurred"
end if

WaitForAttrib

WaitForAttrib メソッドは、指定行/列位置にある autECLPS オブジェクトに関連した接続 の表示スペースで、指定された属性値が現れるまで待ちます。オプションの MaskData パラメーターを使用して、どの属性値を探索するのか を制御することができます。 オプションのプレーン・パラメーターに より、4 つの PS プレーンの内から任意のプレーンを選択することが可能となります。

プロトタイプ

Boolean WaitForAttrib(Variant Row, Variant Col, Variant WaitData,
       [optional] Variant MaskData, [optional] Variant plane, [optional] Variant TimeOut,
       [optional] Boolean bWaitForIr)

パラメーター

Variant Row
属性の行位置。
Variant Col
属性の桁位置。
Variant WaitData
待機する属性値。この値は 1 バイトの 16 進数値です。
Variant MaskData
属性をマスクするのに使用する 1 バイトの 16 進数の値。このパラメーターはオプションです。デフォルト値は 0xFF です。
Variant plane
取得する属性のプレーン。プレーンは、以下のような値が可能です。
1
テキスト・プレーン
2
カラー・プレーン
3
フィールド・プレーン (デフォルト)
4
拡張フィールド・プレーン
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。
Boolean bWaitForIr
この値が True である場合、待ち条件の基準を満たすと、関数は OIA の入力受け入れ準備 ができるまで待機します。このパラメーターはオプションです。デフォルト値は False です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim Row, Col, WaitData, MaskData, plane
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
Row = 20
Col = 16
WaitData = E8h
MaskData = FFh
plane = 3
 
if (autECLPSObj.WaitForAttrib(Row, Col, WaitData, MaskData, plane, 10000))  then
    msgbox "Attribute " " WaitData " " found"
else
    msgbox "Timeout Occurred"
end if

WaitWhileAttrib

WaitWhileAttrib メソッドは、指定行/列位置にある autECLPS オブジェクトに関連した接続 の表示スペースに、指定された属性値が表示されている間待ちます。オプションの MaskData パラメーターを使用して、どの属性値を探索するのか を制御することができます。 オプションのプレーン・パラメーターに より、4 つの PS プレーンの内から任意のプレーンを選択することが可能となります。

プロトタイプ

Boolean WaitWhileAttrib(Variant Row, Variant Col, Variant WaitData,
       [optional] Variant MaskData, [optional] Variant plane, [optional] Variant TimeOut,
       [optional] Boolean bWaitForIr)

パラメーター

Variant Row
属性の行位置。
Variant Col
属性の桁位置。
Variant WaitData
待機する属性値。この値は 1 バイトの 16 進数値です。
Variant MaskData
属性をマスクするのに使用する 1 バイトの 16 進数の値。このパラメーターはオプションです。デフォルト値は 0xFF です。
Variant plane
取得する属性のプレーン。プレーンは、以下のような値が可能です。
1
テキスト・プレーン
2
カラー・プレーン
3
フィールド・プレーン (デフォルト)
4
拡張フィールド・プレーン
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。
Boolean bWaitForIr
この値が True である場合、待ち条件の基準を満たすと、関数は OIA の入力受け入れ準備 ができるまで待機します。このパラメーターはオプションです。デフォルト値は False です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim Row, Col, WaitData, MaskData, plane
 
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
Row = 20
Col = 16
WaitData = E8h
MaskData = FFh
plane = 3
 
if (autECLPSObj.WaitWhileAttrib(Row, Col, WaitData, MaskData, plane, 10000))  then
	        msgbox "Attribute " " WaitData " " No longer exists"
else
	        msgbox "Timeout Occurred"
end if

WaitForScreen

autECLScreenDesc パラメーターにより記述された画面が表示スペースに 現れるのを同期して待ちます。

注:
OIA 入力フラグの待機は autECLScreenDesc オブジェクト 上に設定され、パラメーターとして待機メソッドに渡されません。

プロトタイプ

Boolean WaitForScreen(Object screenDesc, [optional] Variant TimeOut)

パラメーター

Object screenDesc
画面を記述する autECLScreenDesc オブジェクト (autECLScreenDesc クラスを参照)。
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
autECLScreenDesObj.AddCursorPos 23, 1
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000))  then
    msgbox "Screen found"
else
    msgbox "Timeout Occurred"
end if

WaitWhileScreen

autECLScreenDesc パラメーターにより記述された画面が表示スペースから なくなるまで同期して待ちます。

注:
OIA 入力フラグの待機は autECLScreenDesc オブジェクト 上に設定され、パラメーターとして待機メソッドに渡されません。

プロトタイプ

Boolean WaitWhileScreen(Object screenDesc, [optional] Variant TimeOut)

パラメーター

Object ScreenDesc
画面を記述する autECLScreenDesc オブジェクト (autECLScreenDesc クラスを参照)。
Variant TimeOut
待機する時間の最大長 (ミリ秒)。このパラメーターはオプションです。 デフォルトは Infinite (無期限) です。

戻り値

メソッドは、条件が合致していれば True を戻し、 タイムアウト値が超えていれば False を戻します。

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName("A")
 
autECLScreenDesObj.AddCursorPos 23, 1
 
if (autECLPSObj.WaitWhileScreen(autECLScreenDesObj, 10000))  then
    msgbox "Screen exited"
else
    msgbox "Timeout Occurred"
end if

CancelWaits

現在活動待ちのメソッドを取り消します。

プロトタイプ

void CancelWaits()

パラメーター

なし

戻り値

なし

autECLPS イベント

以下のイベントは autECLPS に有効です。

void NotifyPSEvent()
void NotifyKeyEvent(string KeyType, string KeyString, PassItOn as Boolean)
void NotifyCommEvent(boolean bConnected)
void NotifyPSError()
void NotifyKeyError()
void NotifyCommError()
void NotifyPSStop(Long Reason)
void NotifyKeyStop(Long Reason)
void NotifyCommStop(Long Reason)

NotifyPSEvent

指定された PS は更新されました。

プロトタイプ

void NotifyPSEvent()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyKeyEvent

キー・ストローク・イベントが起こり、キー情報が提供されました。 この関数は、指定された PS に対するキー・ストロークをインターセプトするために 使用することができます。キー情報はイベント・ハンドラーに渡され、 続いて次へ渡すことも、別のアクションを実行することも可能です。

注:
1 つのオブジェクトだけが、同時点で指定された PS に登録済みの キー・ストローク・イベント処理を持つことができます。

プロトタイプ

void NotifyKeyEvent(string KeyType, string KeyString, PassItOn as Boolean)

パラメーター

String KeyType
インターセプトされたキーのタイプ。
M
略号キー・ストローク
A
ASCII
String KeyString
インターセプトされたキー・ストローク。
Boolean PassItOn
キー・ストロークのエコーを PS に返すかどうかを示すためにフラグを付けます。
True
キー・ストロークを PS に渡すようにします。
False
キー・ストロークを PS に渡さないようにします。

例は、イベント処理の例を参照してください。

NotifyCommEvent

指定された通信リンクは、接続あるいは接続解除されています。

プロトタイプ

void NotifyCommEvent(boolean bConnected)

パラメーター

boolean bConnected
通信リンクが現在接続されている場合は True で、これ以外の場合は False。

例は、イベント処理の例を参照してください。

NotifyPSError

このイベントは、イベント処理でエラーが発生したときに起こります。

プロトタイプ

void NotifyPSError()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyKeyError

このイベントは、イベント処理でエラーが発生したときに起こります。

プロトタイプ

void NotifyKeyError()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyCommError

このイベントは、イベント処理でエラーが発生したときに起こります。

プロトタイプ

void NotifyCommError()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyPSStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyPSStop(Long Reason)

パラメーター

Long Reason
停止の理由コード。現在は、これは常に 0 です。

例は、イベント処理の例を参照してください。

NotifyKeyStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyKeyStop(Long Reason)

パラメーター

Long Reason
停止の理由コード。現在は、これは常に 0 です。

例は、イベント処理の例を参照してください。

NotifyCommStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyCommStop(Long Reason)

パラメーター

Long Reason
停止の理由コード。現在は、これは常に 0 です。

イベント処理の例

以下は、PS イベントの実装方法についての簡単な例です。

Option Explicit
Private WithEvents mPS As autECLPS 'AutPS added as reference
Private WithEvents Mkey as autECLPS
 
sub main()
'Create Objects
Set mPS = New autECLPS
Set mkey = New autECLPS
mPS.SetConnectionByName "A" 'Monitor Session A for PS Updates
mPS.SetConnectionByName "B" 'Intercept Keystrokes intended for Session B
 
mPS.RegisterPSEvent 'register for PS Updates
mPS.RegisterCommEvent ' register for Communications Link updates for session A
mkey.RegisterKeyEvent 'register for Key stroke intercept
 
' Display your form or whatever here  (this should be a blocking call, otherwise sub just ends
call DisplayGUI()
 
mPS.UnregisterPSEvent
mPS.UnregisterCommEvent
mkey.UnregisterKeyEvent 
 
set mPS = Nothing
set mKey = Nothing
End Sub
 
'This sub will get called when the PS of the Session registered
'above changes
Private Sub mPS_NotifyPSEvent()
' do your processing here 
End Sub
 
'This sub will get called when Keystrokes are entered into Session B
Private Sub mkey_NotifyKeyEvent(string KeyType, string KeyString, PassItOn as Boolean)
' do your keystroke filtering here
If (KeyType = "M") Then
'handle mnemonics here
if (KeyString = "[PF1]" then 'intercept PF1 and send PF2 instead
mkey.SendKeys "[PF2]"
set PassItOn = false
end if
end if
 
End Sub
 
'This event occurs if an error happens in PS event processing 
Private Sub mPS_NotifyPSError()
'Do any error processing here
End Sub
 
'This event occurs when PS Event handling ends
Private Sub mPS_NotifyPSStop(Reason As Long)
'Do any stop processing here
End Sub
 
'This event occurs if an error happens in Keystroke processing
Private Sub mkey_NotifyKeyError()
'Do any error processing here
End Sub
 
'This event occurs when key stroke event handling ends
Private Sub mkey_NotifyKeyStop(Reason As Long)
'Do any stop processing here
End Sub
 
'This sub will get called when the Communication Link Status of the registered
'connection changes
Private Sub mPS_NotifyCommEvent()
' do your processing here 
End Sub
 
'This event occurs if an error happens in Communications Link event processing 
Private Sub mPS_NotifyCommError()
'Do any error processing here
End Sub
 
'This event occurs when Communications Status Notification ends
Private Sub mPS_NotifyCommStop()
'Do any stop processing here
End Sub

autECLScreenDesc クラス

autECLScreenDesc は、IBM ホスト・アクセス・クラス・ライブラリーの画面認識テクノロジーの 画面を記述するために使用されるクラスです。これは、カーソル位置はもちろんのこと、 これを説明する表示スペースの 4 つの主なプレーン (テキスト、フィールド、 拡張フィールド、およびカラー・プレーン) すべてを使用します。

このオブジェクトで用意されているメソッドを使用して、プログラマーは指定された画面が ホスト・サイド・アプリケーションでどのように表示されるかを詳細に記述することが できます。autECLScreenDesc オブジェクトが作成されセットされると、これを autECLPS で提供される 同期 WaitFor... メソッドのいずれかに渡すか、または autECLScreenReco に渡すことが でき、autECLScreenDesc オブジェクトと一致する画面が PS 内に現れた場合は、 非同期イベントを破棄します。

autECLScreenDesc メソッド

以下のセクションで、autECLScreenDesc に有効なメソッドを説明します。

void AddAttrib(Variant attrib, Variant row, Variant col, Variant plane)
void AddCursorPos(Variant row, Variant col)
void AddNumFields(Variant num)
void AddNumInputFields(Variant num)
void AddOIAInhibitStatus(Variant type)
void AddString(String str, Variant row, Variant col, [optional] Boolean caseSense)
void AddStringInRect(String str,  Variant sRow,  Variant sCol,
        Variant eRow,  Variant eCol, [optional] Variant caseSense)
void Clear()

AddAttrib

画面記述の指定位置に属性値を追加します。

プロトタイプ

void AddAttrib(Variant attrib, Variant row, Variant col, Variant plane)

パラメーター

Variant attrib
1 バイトの 16 進数属性の値。
Variant row
行位置。
Variant col
桁位置。
Variant plane
取得する属性のプレーン。プレーンは、以下のような値が可能です。

戻り値

なし

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object 
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddCursorPos 23,1
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000)) then
     msgbox "Screen reached"
 else
     msgbox "Timeout Occurred"
end if

AddCursorPos

指定位置に画面記述のためのカーソル位置をセットします。

プロトタイプ

void AddCursorPos(Variant row, Variant col)

パラメーター

Variant row
行位置。
Variant col
桁位置。

戻り値

なし

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object 
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddCursorPos 23,1
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000)) then
     msgbox "Screen reached"
else
     msgbox "Timeout Occurred"
end if

AddNumFields

画面記述にフィールド数を追加します。

プロトタイプ

void AddNumFields(Variant num)

パラメーター

Variant num
フィールドの数。

戻り値

なし

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object 
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddCursorPos 23,1
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000)) then
    msgbox "Screen reached"
else
    msgbox "Timeout Occurred"
end if

AddNumInputFields

画面記述にフィールド数を追加します。

プロトタイプ

void AddNumInputFields(Variant num)

パラメーター

Variant num
入力フィールドの数。

戻り値

なし

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object 
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddCursorPos 23,1
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000)) then
msgbox "Screen reached"
else
    msgbox "Timeout Occurred"
end if

AddOIAInhibitStatus

画面記述のための OIA モニターのタイプをセットします。

プロトタイプ

void AddOIAInhibitStatus(Variant type)

パラメーター

Variant type
OIA 状況のタイプ。有効な値は、以下のとおりです。

戻り値

なし

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object 
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddCursorPos 23,1
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000)) then
    msgbox "Screen reached"
else
    msgbox "Timeout Occurred"
end if

AddString

画面記述の指定された位置にストリングを追加します。

プロトタイプ

void AddString(String str, Variant row, Variant col, [optional] Boolean caseSense)

パラメーター

String str
追加するストリング。
Variant row
行位置。
Variant col
桁位置。
Boolean caseSense
この値が True である場合は、ストリングは大/小文字の区別付きで 追加されます。このパラメーターはオプションです。デフォルト値は True です。

戻り値

なし

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object 
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddCursorPos 23,1
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000)) then
    msgbox "Screen reached"
else
    msgbox "Timeout Occurred"
end if

AddStringInRect

画面記述の指定長方形内にストリングを追加します。

プロトタイプ

void AddStringInRect(String str,  Variant sRow,  Variant sCol,
        Variant eRow,  Variant eCol, [optional] Variant caseSense)

パラメーター

String str
追加するストリング
Variant sRow
左上行位置。
Variant sCol
左上桁位置。
Variant eRow
右下行位置。
Variant eCol
右下桁位置。
Variant caseSense
この値が True である場合は、ストリングは大/小文字の区別付きで 追加されます。このパラメーターはオプションです。デフォルト値は True です。

戻り値

なし

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object 
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddCursorPos 23,1
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000)) then
    msgbox "Screen reached"
else
    msgbox "Timeout Occurred"
end if

Clear

画面記述からすべての記述要素を取り除きます。

プロトタイプ

void Clear()

パラメーター

なし

戻り値

なし

Dim autECLPSObj as Object
Dim autECLScreenDescObj as Object 
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autECLPSObj = CreateObject("PCOMM.autECLPS")
autECLPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddCursorPos 23,1
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLPSObj.WaitForScreen(autECLScreenDesObj, 10000)) then
    msgbox "Screen reached"
else
    msgbox "Timeout Occurred"
end if
 
autECLScreenDesObj.Clear // start over for a new screen
 
 

autECLScreenReco クラス

autECLScreenReco クラスは、ホスト・アクセス・クラス・ライブラリーの画面認識システム にとってはエンジンに相当するものです。これには、画面の記述を追加したり取り除いたり するメソッドが含まれます。また、これにはこれらの画面を認識したり、これら画面用に ユーザーのイベント・ハンドラー・コードを非同期的に呼び戻したりするためのロジックも 含まれています。

autECLScreenReco クラスのオブジェクトを固有な認識セットと考えてください。このオブジェクトは、これが画面用に監視する複数の autECLPS オブジェクト、および 探索すべき複数の画面を持つことができ、これが追加された autECLPS オブジェクトの いずれかで登録済み画面を見つけた場合には、これはユーザーのアプリケーションで 定義されたイベント処理コードを破棄します。

ユーザーが実施すべきことは、アプリケーションを開始するときに ユーザーの autECLScreenReco オブジェクトを設定するだけです。 モニターしたい任意の autECLPS で画面が表示されると、イベント・コード が autECLScreenReco によって呼び出されます。ユーザーは、画面をモニターする 際に何も実行する必要はありません。

例は、イベント処理の例を参照してください。

autECLScreenReco メソッド

以下のセクションで、autECLScreenReco に有効なメソッドを説明します。

void AddPS(autECLPS ps)
Boolean IsMatch(autECLPS ps, AutECLScreenDesc sd)
void RegisterScreen(AutECLScreenDesc sd)
void RemovePS(autECLPS ps)
void UnregisterScreen(AutECLScreenDesc sd)

AddPS

autECLScreenReco オブジェクトに対して、モニターすべき autECLPS オブジェクトを追加します。

プロトタイプ

void AddPS(autECLPS ps)

パラメーター

autECLPS ps
モニター対象の PS オブジェクト。

戻り値

なし

例は、イベント処理の例を参照してください。

IsMatch

autECLPS オブジェクトおよび AutECLScreenDesc オブジェクトを渡すことを可能にし、 画面記述が PS の現在の状態に一致しているかどうかの判別を可能にします。 画面認識のエンジンは このロジックを使用しますが、どのルーチンもそれを呼び出すことができるように作られます。

プロトタイプ

Boolean IsMatch(autECLPS ps, AutECLScreenDesc sd)

パラメーター

autECLPS ps
比較する autPS オブジェクト。
AutECLScreenDesc sd
比較する autECLScreenDesc オブジェクト。

戻り値

AutECLScreenDesc オブジェクトが PS 内の現行画面に一致する場合は True で、 それ以外の場合は False です。

Dim autPSObj as Object
Dim autECLScreenDescObj as Object
 
Set autECLScreenDescObj = CreateObject("PCOMM.autECLScreenDesc")
Set autPSObj = CreateObject("PCOMM.autECLPS")
autPSObj.SetConnectionByName "A"
 
autECLScreenDesObj.AddCursorPos 23, 1
autECLScreenDesObj.AddAttrib E8h, 1, 1, 2
autECLScreenDesObj.AddNumFields 45
autECLScreenDesObj.AddNumInputFields 17
autECLScreenDesObj.AddOIAInhibitStatus 1
autECLScreenDesObj.AddString "LOGON", 23, 11, True
autECLScreenDesObj.AddStringInRect "PASSWORD", 23, 1, 24, 80, False
 
if (autECLScreenReco.IsMatch(autPSObj, autECLScreenDesObj)) then
	   msgbox "matched"
else
	   msgbox "no match"
end if

RegisterScreen

指定された画面の記述のために画面認識オブジェクトに追加された すべての autECLPS オブジェクトのモニターを開始します。 その画面が PS に現れると、NotifyRecoEvent が発生します。

プロトタイプ

void RegisterScreen(AutECLScreenDesc sd)

パラメーター

AutECLScreenDesc sd
登録対象の画面記述オブジェクト。

戻り値

なし

例は、イベント処理の例を参照してください。

RemovePS

画面認識モニターから autECLPS オブジェクトを除去します。

プロトタイプ

void RemovePS(autECLPS ps)

パラメーター

autECLPS ps
除去する autECLPS オブジェクト。

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterScreen

画面認識モニターから画面記述を除去します。

プロトタイプ

void UnregisterScreen(AutECLScreenDesc sd)

パラメーター

AutECLScreenDesc sd
除去する画面記述オブジェクト。

戻り値

なし

例は、イベント処理の例を参照してください。

autECLScreenReco イベント

以下のイベントは autECLScreenReco に有効です。

void NotifyRecoEvent(AutECLScreenDesc sd, autECLPS ps)
void NotifyRecoError()
void NotifyRecoStop(Long Reason)  

NotifyRecoEvent

このイベントは、autECLScreenReco オブジェクトに追加された PS に登録済み画面記述が 現れたときに起こります。

プロトタイプ

void NotifyRecoEvent(AutECLScreenDesc sd, autECLPS ps)

パラメーター

AutECLScreenDesc sd
その基準を満たしている画面記述オブジェクト。
autECLPS ps
突き合わせが行われた PS オブジェクト。

例は、イベント処理の例を参照してください。

NotifyRecoError

このイベントは、イベント処理でエラーが発生したときに起こります。

プロトタイプ

void NotifyRecoError()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyRecoStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyRecoStop(Long Reason)

パラメーター

Long Reason
停止の理由コード。現在は、これは常に 0 です。

イベント処理の例

以下は、画面認識イベントの実装方法についての簡単な例です。

Dim myPS as Object
Dim myScreenDesc as Object
Dim WithEvents reco as autECLScreenReco  'autECLScreenReco added as reference
 
Sub Main()
  ' Create the objects
  Set reco= new autECLScreenReco
  myScreenDesc = CreateObject("PCOMM.autECLScreenDesc")
  Set myPS = CreateObject("PCOMM.autECLPS")
  myPS.SetConnectionByName "A"
 
  ' Set up the screen description
  myScreenDesc.AddCursorPos 23, 1
  myScreenDesc.AddString "LOGON"
  myScreenDesc.AddNumFields 59
 
  ' Add the PS to the reco object (can add multiple PS's)
  reco.addPS myPS
 
  ' Register the screen (can add multiple screen descriptions)
  reco.RegisterScreen myScreenDesc
 
  ' Display your form or whatever here  (this should be a blocking call, otherwise sub just ends
  call DisplayGUI()
 
  ' Clean up
  reco.UnregisterScreen myScreenDesc
  reco.RemovePS myPS
  set myPS = Nothing
  set myScreenDesc = Nothing
  set reco = Nothing
End Sub
 
'This sub will get called when the screen Description registered above appears in
'Session A.  If multiple PS objects or screen descriptions were added,  you can
'determine which screen and which PS via the parameters.
 
Sub reco_NotifyRecoEvent(autECLScreenDesc SD, autECLPS PS)
  If (reco.IsMatch(PS,myScreenDesc)) Then
    ' do your processing for your screen here
  End If
End Sub
 
Sub reco_NotifyRecoError
   'do your error handling here
End sub 
 
Sub reco_NotifyRecoStop(Reason as Long)
    'Do any stop processing here
End sub

autECLSession クラス

autECLSession オブジェクトは、 一般エミュレーター関連サービスを提供し、ホスト・アクセス・クラス・ライブラリーの 他の主要なオブジェクトへのポインターを含んでいます。 登録されている名前は、PCOMM.autECLSession です。

autECLSession に含まれているオブジェクトはそれぞれ 独立させることができますが、これらへのポインターは autECLSession クラスに 存在します。autECLSession オブジェクトが作成されるときは、autECLPS、autECLOIA、autECLXfer、autECLWindowMetrics、autECLPageSettings、 および autECLPrinterSettings オブジェクトも作成されます。それらは、他のプロパティーと同じように参照してください。

注:
  1. このオブジェクトの現行バージョンは 1.2 です。 このオブジェクトには 2 つのバージョンがあり、レジストリー内の ProgID はそれぞれ PCOMM.autECLSession.1 および PCOMM.autECLSession.2 です。バージョンを区別しない ProgID は、PCOMM.autECLSession です。 PCOMM.autECLSession.1 オブジェクトは、プロパティー autECLPageSettings および autECLPrinterSettings をサポートしません。
  2. 最初に、作成したオブジェクトの接続を設定しなければなりません。 SetConnectionByName または SetConnectionByHandle を使用して、 オブジェクトを初期設定します。 接続は一度しか設定できません。接続が設定された後は、SetConnection メソッドをさらに呼び出すと例外を引き起こします。 また、接続を設定せずに autECLSession プロパティーまたはメソッドにアクセスしようと しても、例外が引き起こされます。

以下の例は、Visual Basic で autECLSession オブジェクトを作成し、 設定する方法を示しています。

DIM  SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' For example, set the host window to minimized
SessObj.autECLWinMetrics.Minimized = True

プロパティー

このセクションでは、autECLSession オブジェクトの プロパティーを説明します。

名前 属性
String Name 読み取り専用
Long Handle 読み取り専用
String ConnType 読み取り専用
Long CodePage 読み取り専用
Boolean Started 読み取り専用
Boolean CommStarted 読み取り専用
Boolean APIEnabled 読み取り専用
Boolean Ready 読み取り専用
Object autECLPS 読み取り専用
Object autECLOIA 読み取り専用
Object autECLXfer 読み取り専用
Object autECLWinMetrics 読み取り専用
Object autECLPageSettings 読み取り専用
Object autECLPrinterSettings 読み取り専用

Name

このプロパティーは、autECLSession が設定された接続の 接続名ストリングです。パーソナル・コミュニケーションズは、短い文字 ID (A から Z、または a から z) のみをストリングで戻します。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Name は、String データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Name as String
DIM  SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
 
' Save the name
Name = SessObj.Name

Handle

これは、autECLSession オブジェクトが 設定された接続のハンドルです。特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Handle は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
 
' Save the session handle
Hand = SessObj.Handle

ConnType

これは、autECLXfer が設定された接続タイプです。 このタイプは、時間の経過とともに変更する場合が あります。ConnType は、String データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Type as String
DIM  SessObj as Object
 
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' Save the type
Type = SessObj.ConnType

ConnType プロパティーの接続タイプは、以下のとおりです。

戻されるストリング 意味
DISP3270 3270 ディスプレイ
DISP5250 5250 ディスプレイ
PRNT3270 3270 プリンター
PRNT5250 5250 プリンター
ASCII VT エミュレーション

CodePage

これは、autECLXfer が設定された接続のコード・ページです。 このコード・ページは、時間の経過とともに変更される場合があります。CodePage は、Long データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  CodePage as Long
DIM  SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' Save the code page
CodePage = SessObj.CodePage

Started

これは、エミュレーター・ウィンドウが開始されたかどうかを示します。 ウィンドウがオープンしている場合、値は True です。 その他の場合は False です。Started は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  SessObj as Object
 
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' This code segment checks to see if A is started.
' The results are sent to a text box called Result.
If SessObj.Started = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

CommStarted

これは、ホストへの接続の状況を示しています。 ホストが接続されている場合、値は True です。 その他の場合は False です。CommStarted は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  SessObj as Object
 
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
 
' This code segment checks to see if communications are connected
' for session A.  The results are sent to a text box called
' CommConn.
If SessObj.CommStarted = False Then
    CommConn.Text = "No"
Else
    CommConn.Text = "Yes"
End If

APIEnabled

これは、エミュレーターが API 使用可能かどうかを示します。API 設定 (パーソナル・コミュニケーションズのウィンドウでは、 「ファイル」->「API の設定」を選択) の状態に応じて、 接続が可能な場合と、接続できない場合があります。エミュレーターが使用可能の場合には、True です。その他の場合には、False です。APIEnabled は、Boolean データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  SessObj as Object
 
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
 
' This code segment checks to see if A is API enabled.
' The results are sent to a text box called Result.
If SessObj.APIEnabled = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

Ready

これは、エミュレーター・ウィンドウが 開始されていて、API 使用可能で、そして接続されているかどうかを示します。 このプロパティーは、3 つのすべてのプロパティーを確認します。 エミュレーターが準備できている場合には、値は True です。 その他の場合には、False です。Ready は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  SessObj as Object
 
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
 
' This code segment checks to see if A is ready.
' The results are sent to a text box called Result.
If SessObj.Ready = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

autECLPS オブジェクト

autECLPS オブジェクトを使用すると、PCOMM.autECLPS クラスに 含まれるメソッドにアクセスすることができます。 詳細については、autECLPS クラスを参照してください。 以下の例は、このオブジェクトを示しています。

DIM  SessObj as Object
DIM  PSSize as Long
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' For example, get the PS size
PSSize = SessObj.autECLPS.GetSize()

autECLOIA オブジェクト

autECLOIA オブジェクトを使用すると、PCOMM.autECLOIA クラスに 含まれるメソッドにアクセスすることができます。 詳細については、autECLOIA クラスを参照してください。 以下の例は、このオブジェクトを示しています。

DIM  SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' For example, set the host window to minimized
If (SessObj.autECLOIA.Katakana) Then
	'whatever
Endif

autECLXfer オブジェクト

autECLXfer オブジェクトを使用すると、PCOMM.autECLXfer クラスに 含まれるメソッドにアクセスすることができます。 詳細については、autECLXfer クラスを参照してください。 以下の例は、このオブジェクトを示しています。

DIM  SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' For example
SessObj.Xfer.Sendfile "c:¥temp¥filename.txt",
			    "filename text a0",
			    "CRLF ASCII"

autECLWinMetrics オブジェクト

autECLWinMetrics オブジェクトを使用すると、 PCOMM.autECLWinMetrics クラスに含まれるメソッドにアクセスすることができます。 詳細については、autECLWinMetrics クラスを参照してください。 以下の例は、このオブジェクトを示しています。

DIM  SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' For example, set the host window to minimized
SessObj.autECLWinMetrics.Minimized = True

autECLPageSettings オブジェクト

autECLPageSettings オブジェクトを使用すると、PCOMM.autECLPageSettings クラスに含まれるメソッドにアクセスすることができます。詳細については、 autECLPageSettings クラスを参照してください。

以下の例で、autECLPageSettings オブジェクトを示します。

DIM SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
'Initialize the session
SessObj.SetConnectionByName("A")

'For example, set the FaceName
SessObj.autECLPageSettings.FaceName = "Courier New"

autECLPageSettings オブジェクトは VBSCRIPT でもサポートされています。以下の例は、VBSCRIPT を使用する方法を示しています。

sub test_()
  autECLSession.SetConnectionByName(ThisSessionName)
  autECLSession.autECLPageSettings.FaceName="Courier"
 end sub

autECLPrinterSettings オブジェクト

autECLPrinterSettings オブジェクトを使用すると、PCOMM.autECLPrinterSettings クラスに含まれるメソッドにアクセスすることができます。詳細については、 autECLPageSettings クラスを参照してください。

以下の例で、autECLPageSettings オブジェクトを示します。

DIM SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
' Initialize the session
SessObj.SetConnectionByName("A")

'For example, set the Windows default printer
SessObj.autECLPrinterSettings.SetWinDefaultPrinter

autECLPrinterSettings オブジェクトは VBSCRIPT でもサポートされています。以下の例は、VBSCRIPT を使用する方法を示しています。

sub test_()
  autECLSession.SetConnectionByName(ThisSessionName)
  autECLSession.autECLPrinterSettings.SetWinDefaultPrinter
end sub

autECLSession メソッド

以下のセクションで、autECLSession オブジェクトに有効な メソッドを説明します。

void RegisterSessionEvent(Long updateType)
void RegisterCommEvent()
void UnregisterSessionEvent()
void UnregisterCommEvent()
void SetConnectionByName (String Name)
void SetConnectionByHandle (Long Handle)
void StartCommunication()
void StopCommunication()

RegisterSessionEvent

このメソッドは、指定されたセッション・イベントの通知を受け取る ための autECLSession オブジェクトを登録します。

注:
このメソッドはサポートされません。また、使用を推奨しません。

プロトタイプ

void RegisterSessionEvent(Long updateType)  

パラメーター

Long updateType
モニターすべき更新のタイプ。
  1. PS の更新
  2. OIA の更新
  3. PS または OIA の更新

戻り値

なし

例は、イベント処理の例を参照してください。

RegisterCommEvent

このメソッドは、すべての通信リンク接続/接続解除のイベントの通知を受け取るための オブジェクトを登録します。

プロトタイプ

void RegisterCommEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterSessionEvent

セッション・イベント処理を終了します。

注:
このメソッドはサポートされません。また、使用を推奨しません。

プロトタイプ

void UnregisterSessionEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterCommEvent

通信リンク・イベント処理を終了します。

プロトタイプ

void UnregisterCommEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

SetConnectionByName

このメソッドは、接続名を使用して、新しく作成された autECLSession オブジェクトの 接続を設定します。パーソナル・コミュニケーションズでは、この接続名は、短い ID (文字 A から Z、または a から z) です。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

プロトタイプ

void SetConnectionByName (String Name)

パラメーター

String Name
1 文字の接続のストリング短縮名 (A から Z、または a から z)。

戻り値

なし

以下の例は、接続名を使用して、新しく作成された autECLSession オブジェクトの接続を 設定する方法を示します。

DIM  SessObj as Object
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
SessObj.SetConnectionByName("A")
' For example, set the host window to minimized
SessObj.autECLWinMetrics.Minimized = True

SetConnectionByHandle

このメソッドは、接続ハンドルを使用して、新しく作成された autECLSession オブジェクトの 接続を設定します。パーソナル・コミュニケーションズでは、この接続ハンドルは Long integer です。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

プロトタイプ

void SetConnectionByHandle(Long Handle)

パラメーター

Long Handle
オブジェクトに設定される接続の Long integer 値。

戻り値

なし

以下の例は、接続ハンドルを使用して、新しく作成された autECLSession オブジェクトの 接続を設定する方法を示します。

Dim  SessObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
autECLConnList.Refresh
autECLPSObj.SetConnectionByHandle(autECLConnList(1).Handle)

StartCommunication

StartCommunication 集合要素メソッドは、 ホスト・データ・ストリームに PCOMM エミュレーターを接続します。 これは、PCOMM エミュレーター「通信」メニューを表示して「接続」を選んだ場合と同じ結果になります。

プロトタイプ

void StartCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim SessObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
autECLConnList.Refresh
SessObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
SessObj.StartCommunication()

StopCommunication

StopCommunication 集合要素メソッドは、 ホスト・データ・ストリームから PCOMM エミュレーターを切断します。 これは、PCOMM エミュレーターの「通信」メニューを表示して 「切断」を選んだ場合 と同じ結果になります。

プロトタイプ

void StopCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim SessObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set SessObj = CreateObject("PCOMM.autECLSession")
 
' Initialize the session
autECLConnList.Refresh
SessObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
SessObj.StopCommunication()

autECLSession イベント

以下のイベントは、autECLSession に有効です。

void NotifyCommEvent(boolean bConnected)
void NotifyCommError()
void NotifyCommStop(Long Reason)

NotifyCommEvent

指定された通信リンクは、接続あるいは接続解除されています。

プロトタイプ

void NotifyCommEvent(boolean bConnected)

パラメーター

boolean bConnected
通信リンクが現在接続されている場合は True。 それ以外の場合は False。

例は、イベント処理の例を参照してください。

NotifyCommError

このイベントは、イベント処理でエラーが発生したときに起こります。

プロトタイプ

void NotifyCommError()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyCommStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyCommStop(Long Reason)

パラメーター

Long Reason
停止の理由コード。現在は、これは常に 0 です。

イベント処理の例

以下は、セッション・イベントの実装方法についての簡単な例です。

Option Explicit
Private WithEvents mSess As autECLSession   'AutSess added as reference

sub main()
   'Create Objects
   Set mSess = New autECLSession
   mSess.SetConnectionByName "A"
    mSess.RegisterCommEvent          'register for communication link notifications
   ' Display your form or whatever here  (this should be a blocking call, otherwise sub just ends
   call DisplayGUI()
   mSess.UnregisterCommEvent
   set mSess = Nothing
End Sub

'This sub will get called when the Communication Link Status of the registered
'connection changes
Private Sub mSess_NotifyCommEvent()
    ' do your processing here      
End Sub

'This event occurs if an error happens in Communications Link event processing 
Private Sub mSess_NotifyCommError()
   'Do any error processing here
End Sub

'This event occurs when Communications Status Notification ends
Private Sub mSess_NotifyCommStop()
   'Do any stop processing here
End Sub

autECLWinMetrics クラス

autECLWinMetrics オブジェクト は、エミュレーター・ウィンドウでの操作を実行します。 これによって、ウィンドウ長方形および位置の操作 (例えば、SetWindowRect、Ypos、および Width) を、 ウィンドウ状態の操作 (例えば、Visible または Restored) と同じように実行できます。 登録されている名前は、PCOMM.autECLWinMetrics です。

最初に、作成したオブジェクトの接続を設定しなければなりません。 SetConnectionByName または SetConnectionByHandle を使用して、 オブジェクトを初期設定します。 接続は一度しか設定できません。 接続が設定された後は、接続設定メソッドをさらに呼び出すと例外を引き起こします。 また、接続を設定せずにプロパティーまたはメソッドにアクセスしようとしても、 例外が引き起こされます。

注:
autECL オブジェクト内の autECLSession オブジェクト は、autECL オブジェクトにより設定されます。

以下の例は、Visual Basic で autECLWinMetrics オブジェクトを作成し 設定する方法を示しています。

DIM  autECLWinObj as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
autECLWinObj.SetConnectionByName("A")
' For example, set the host window to minimized
autECLWinObj.Minimized = True

プロパティー

このセクションでは、autECLWinMetrics オブジェクト のプロパティーを説明します。

名前 属性
String WindowTitle 読み取り/書き込み
Long Xpos 読み取り/書き込み
Long Ypos 読み取り/書き込み
Long Width 読み取り/書き込み
Long Height 読み取り/書き込み
Boolean Visible 読み取り/書き込み
Boolean Active 読み取り/書き込み
Boolean Minimized 読み取り/書き込み
Boolean Maximized 読み取り/書き込み
Boolean Restored 読み取り/書き込み
String Name 読み取り専用
Long Handle 読み取り専用
String ConnType 読み取り専用
Long CodePage 読み取り専用
Boolean Started 読み取り専用
Boolean CommStarted 読み取り専用
Boolean APIEnabled 読み取り専用
Boolean Ready 読み取り専用

WindowTitle

これは、autECLWinMetrics オブジェクトに 関連する接続のタイトル・バーに現在あるタイトルです。 このプロパティーは、変更と検索の両方が可能です。WindowTitle は、String データ型で読み取り/書き込み可能です。 以下の例は、このプロセスを示しています。以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Dim  WinTitle as String
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
WinTitle = autECLWinObj.WindowTitle 'get the window title
 
' or...
 
autECLWinObj.WindowTitle = "Flibberdeejibbet" 'set the window title
使用上の注意

ウィンドウ・タイトルがブランクに設定された場合、接続のウィンドウ・タイトルは その元の設定に復元されます。

Xpos

これは、エミュレーター・ウィンドウ長方形の 上方左の角の x 位置です。 このプロパティーは、変更と検索の両方が可能です。Xpos は、Long データ型で 読み取り/書き込み可能です。ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Dim  x as Long
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
x = autECLWinObj.Xpos 'get the x position
 
' or...
 
autECLWinObj.Xpos = 6081 'set the x position

Ypos

これは、エミュレーター・ウィンドウ長方形の 上方左の角の y 位置です。 このプロパティーは、変更と検索の両方が可能です。Ypos は、Long データ型で読み取り/書き込み可能です。 ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Dim  y as Long
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
y = autECLWinObj.Ypos 'get the y position
 
' or...
 
autECLWinObj.Ypos = 6081 'set the y position

Width

これは、エミュレーター・ウィンドウ長方形の幅です。 このプロパティーは、変更と検索の両方が可能です。Width は、Long データ型で 読み取り/書き込み可能です。ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Dim  cx as Long
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
cx = autECLWinObj.Width 'get the width
 
' or...
 
autECLWinObj.Width = 6081 'set the width

Height

これは、エミュレーター・ウィンドウ長方形の高さです。 このプロパティーは、変更と検索の両方が可能です。Height は、Long データ型で 読み取り/書き込み可能です。ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Dim  cy as Long
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
cy = autECLWinObj.Height 'get the height
 
' or...
 
autECLWinObj.Height = 6081 'set the height

Visible

これは、エミュレーター・ウィンドウの可視状態です。 このプロパティーは、変更と検索の両方が可能です。Visible は、Boolean データ型で読み取り/書き込み可能です。 ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
' Set to Visible if not, and vice versa
If ( autECLWinObj.Visible) Then
	autECLWinObj.Visible = False
Else
	autECLWinObj.Visible = True
End If

Active

これは、エミュレーター・ウィンドウのフォーカス状態です。 このプロパティーは、変更と検索の両方が可能です。Active は、Boolean データ型で読み取り/書き込み可能です。 ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
' Set to Active if not, and vice versa
If ( autECLWinObj.Active) Then
	autECLWinObj.Active = False
Else
	autECLWinObj.Active = True
End If

Minimized

これは、エミュレーター・ウィンドウの最小化状態です。 このプロパティーは、変更と検索の両方が可能です。Minimized は Boolean データ型で読み取り/書き込み可能です。 ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
' Set to minimized if not, if minimized set to maximized
If ( autECLWinObj.Minimized) Then
	autECLWinObj.Maximized = True
Else
	autECLWinObj.Minimized = True
End If

Maximized

これは、エミュレーター・ウィンドウの最大化状態です。 このプロパティーは、変更と検索の両方が可能です。Maximized は、Boolean データ型で読み取り/書き込み可能です。 ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
 
' Set to maximized if not, if maximized set to minimized
If ( autECLWinObj.Maximized) Then
	autECLWinObj.Minimized = False
Else
	autECLWinObj.Maximized = True
End If

Restored

これは、エミュレーター・ウィンドウの復元状態です。Restored は、Boolean データ型で読み取り/書き込み可能です。 ただし、付加した接続がインプレースの組み込みオブジェクトである場合は、 このプロパティーは読み取り専用です。 以下の例は、このプロパティーを示しています。

Dim  autECLWinObj as Object
Dim  SessList as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set SessList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the session
SessList.Refresh
autECLWinObj.SetSessionByHandle(SessList(1).Handle)
 
' Set to restored if not, if restored set to minimized
If ( autECLWinObj.Restored) Then
	autECLWinObj.Minimized = False
Else
	autECLWinObj.Restored = True
End If

Name

このプロパティーは、autECLWinMetrics が設定された接続の 接続名ストリングです。現在、パーソナル・コミュニケーションズは、短い文字 ID (A から Z、または a から z) のみをストリングで戻します。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Name は、String データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Name as String
DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' Save the name
Name = Obj.Name

Handle

これは、autECLWinMetrics オブジェクトが 設定された接続のハンドルです。特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Handle は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' Save the handle
Hand = Obj.Handle

ConnType

これは、autECLWinMetrics が設定された接続タイプです。 このタイプは、時間の経過とともに変更する場合が あります。ConnType は、String データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Type as String
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
Obj.SetConnectionByName("A")
' Save the type
Type = Obj.ConnType

ConnType プロパティーの接続タイプは、以下のとおりです。

戻されるストリング 意味
DISP3270 3270 ディスプレイ
DISP5250 5250 ディスプレイ
PRNT3270 3270 プリンター
PRNT5250 5250 プリンター
ASCII VT エミュレーション

CodePage

これは、autECLWinMetrics が設定された接続のコード・ページです。 このコード・ページは、時間の経過とともに変更される場合があります。CodePage は、Long データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  CodePage as Long
DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
Obj.SetConnectionByName("A")
' Save the code page
CodePage = Obj.CodePage

Started

これは、エミュレーター・ウィンドウが開始されたかどうかを示します。 ウィンドウがオープンしている場合、値は True です。 その他の場合は False です。Started は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is started.
' The results are sent to a text box called Result.
If Obj.Started = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

CommStarted

これは、ホストへの接続の状況を示しています。 ホストが接続されている場合、値は True です。 その他の場合は False です。CommStarted は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if communications are connected
' for A.  The results are sent to a text box called
' CommConn.
If Obj.CommStarted = False Then
    CommConn.Text = "No"
Else
    CommConn.Text = "Yes"
End If

APIEnabled

これは、エミュレーターが API 使用可能かどうかを示します。API 設定 (パーソナル・コミュニケーションズのウィンドウでは、 「ファイル」->「API の設定」を選択) の状態に応じて、 接続が可能な場合と、接続できない場合があります。エミュレーターが使用可能の場合には、True です。その他の場合には、False です。APIEnabled は、Boolean データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is API enabled.
' The results are sent to a text box called Result.
If Obj.APIEnabled = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

Ready

これは、エミュレーター・ウィンドウが 開始されていて、API 使用可能で、そして接続されているかどうかを示します。 このプロパティーは、3 つのすべてのプロパティーを確認します。 エミュレーターが準備できている場合には、値は True です。 その他の場合には、False です。Ready は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is ready.
' The results are sent to a text box called Result.
If Obj.Ready = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

autECLWinMetrics メソッド

以下のセクションで、autECLWinMetrics オブジェクトに有効な メソッドを説明します。

void RegisterCommEvent()
void UnregisterCommEvent()
void SetConnectionByName(String Name)
void SetConnectionByHandle(Long Handle)
void GetWindowRect(Variant Left, Variant Top, Variant Right, Variant Bottom)
void SetWindowRect(Long Left, Long Top, Long Right, Long Bottom)
void StartCommunication()
void StopCommunication()

RegisterCommEvent

このメソッドは、すべての通信リンク接続/接続解除のイベントの通知を受け取るための オブジェクトを登録します。

プロトタイプ

void RegisterCommEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterCommEvent

通信リンク・イベント処理を終了します。

プロトタイプ

void UnregisterCommEvent()

パラメーター

なし

戻り値

なし

SetConnectionByName

このメソッドは、接続名を使用して、 新しく作成された autECLWinMetrics オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続名は、短い ID (文字 A から Z、または a から z) です。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

注:
autECLSession 内で autECLWinMetrics オブジェクトを使用している場合は、 これを呼び出さないでください。

プロトタイプ

void SetConnectionByName (String Name)

パラメーター

String Name
1 文字の接続のストリング短縮名 (A から Z、または a から z)。

戻り値

なし

以下の例は、接続名を使用して、新しく作成された autECLWinMetrics オブジェクトの接続を 設定する方法を示します。

DIM  autECLWinObj as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the connection
autECLWinObj.SetConnectionByName("A")
' For example, set the host window to minimized
autECLWinObj.Minimized = True

SetConnectionByHandle

このメソッドは、接続ハンドルを使用して、 新しく作成された autECLWinMetrics オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続ハンドルは Long integer です。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

注:
autECLSession 内で autECLWinMetrics オブジェクトを使用している場合は、 これを呼び出さないでください。

プロトタイプ

void SetConnectionByHandle(Long Handle)

パラメーター

Long Handle
オブジェクトに設定される接続の Long integer 値。

戻り値

なし

以下の例は、接続ハンドルを使用して、新しく作成された autECLWinMetrics オブジェクトの 接続を設定する方法を示します。

DIM  autECLWinObj as Object
DIM  ConnList as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
' For example, set the host window to minimized
autECLWinObj.Minimized = True

GetWindowRect

GetWindowRect メソッドは、 エミュレーター・ウィンドウ長方形の境界点を戻します。

プロトタイプ

void GetWindowRect(Variant Left, Variant Top, Variant Right, Variant Bottom)

パラメーター

Variant Left, Top, Right, Bottom
エミュレーター・ウィンドウの境界点。

戻り値

なし

以下の例は、エミュレーター・ウィンドウ長方形の境界点を戻す方法を示します。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Dim  left
Dim  top
Dim  right
Dim  bottom
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
autECLWinObj.GetWindowRect left, top, right, bottom

SetWindowRect

SetWindowRect メソッドは、 エミュレーター・ウィンドウ長方形の境界点を設定します。

プロトタイプ

void SetWindowRect(Long Left, Long Top, Long Right, Long Bottom)

パラメーター

Long Left, Top, Right, Bottom
エミュレーター・ウィンドウの境界点。

戻り値

なし

以下の例は、エミュレーター・ウィンドウ長方形の境界点を設定する方法を示します。

Dim  autECLWinObj as Object
Dim  ConnList as Object
Set autECLWinObj = CreateObject("PCOMM.autECLWinMetrics")
Set ConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection
ConnList.Refresh
autECLWinObj.SetConnectionByHandle(ConnList(1).Handle)
autECLWinObj.SetWindowRect 0, 0, 6081, 6081

StartCommunication

StartCommunication 集合要素メソッドは、 ホスト・データ・ストリームに PCOMM エミュレーターを接続します。 これは、PCOMM エミュレーター「通信」メニューを表示して「接続」を選んだ場合と同じ結果になります。

プロトタイプ

void StartCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim WinObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set WinObj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the session
autECLConnList.Refresh
WinObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
WinObj.StartCommunication()

StopCommunication

StopCommunication 集合要素メソッドは、 ホスト・データ・ストリームから PCOMM エミュレーターを切断します。 これは、PCOMM エミュレーターの「通信」メニューを表示して 「切断」を選んだ場合 と同じ結果になります。

プロトタイプ

void StopCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim WinObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set WinObj = CreateObject("PCOMM.autECLWinMetrics")
 
' Initialize the session
autECLConnList.Refresh
WinObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
WinObj.StopCommunication()

autECL WinMetrics イベント

以下のイベントは、autECL WinMetrics に有効です。

void NotifyCommEvent(boolean bConnected)
NotifyCommError()
void NotifyCommStop(Long Reason)

NotifyCommEvent

指定された通信リンクは、接続あるいは接続解除されています。

プロトタイプ

void NotifyCommEvent(boolean bConnected)

パラメーター

boolean bConnected
通信リンクが現在接続されている場合は True で、これ以外の場合は False。

例は、イベント処理の例を参照してください。

NotifyCommError

このイベントは、イベント処理でエラーが発生したときに起こります。

プロトタイプ

NotifyCommError()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyCommStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyCommStop(Long Reason)

パラメーター

Long Reason
停止の理由コード。現在は、これは常に 0 です。

イベント処理の例

以下は、WinMetrics イベントの実装方法についての簡単な例です。

Option Explicit
Private WithEvents mWmet As autECLWinMetrics   'AutWinMetrics added as reference
 
sub main()
   'Create Objects
   Set mWmet = New autECLWinMetrics
   mWmet.SetConnectionByName "A"  'Monitor Session A
 
   mWmet.RegisterCommEvent ' register for Communications Link updates for session A
 
   ' Display your form or whatever here  (this should be a blocking call, otherwise sub just ends
   call DisplayGUI()
 
   mWmet.UnregisterCommEvent
 
   set mWmet = Nothing
End Sub
 
'This sub will get called when the Communication Link Status of the registered
'connection changes
Private Sub mWmet _NotifyCommEvent()
    ' do your processing here      
End Sub
 
'This event occurs if an error happens in Communications Link event processing 
Private Sub mWmet _NotifyCommError()
   'Do any error processing here
End Sub
 
'This event occurs when Communications Status Notification ends
Private Sub mWmet _NotifyCommStop()
   'Do any stop processing here
End Sub

autECLXfer クラス

autECLXfer オブジェクト は、ファイル転送サービスを提供します。 登録されている名前は、PCOMM.autECLXfer です。

最初に、作成したオブジェクトの接続を設定しなければなりません。 SetConnectionByName または SetConnectionByHandle を使用して、 オブジェクトを初期設定します。 接続は一度しか設定できません。 接続が設定された後は、SetConnection メソッドをさらに呼び出すと例外を引き起こします。 また、接続を設定せずに autECLXfer プロパティーまたはメソッドにアクセス しようとしても、例外が引き起こされます。 以下の例は、Visual Basic で autECLXfer オブジェクトを作成し設定する方法を示しています。

DIM  XferObj as Object
 
Set XferObj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
XferObj.SetConnectionByName("A")

プロパティー

このセクションでは、autECLXfer オブジェクトのプロパティーを説明します。

名前 属性
String Name 読み取り専用
Long Handle 読み取り専用
String ConnType 読み取り専用
Long CodePage 読み取り専用
Boolean Started 読み取り専用
Boolean CommStarted 読み取り専用
Boolean APIEnabled 読み取り専用
Boolean Ready 読み取り専用

Name

このプロパティーは、autECLXfer が設定された接続の 接続名ストリングです。パーソナル・コミュニケーションズは、短い文字 ID (A から Z、または a から z) のみをストリングで戻します。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Name は、String データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Name as String
DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' Save the name
Name = Obj.Name

Handle

これは、autECLXfer オブジェクトが 設定された接続のハンドルです。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。 Handle は、Long データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' Save the handle
Hand = Obj.Handle

ConnType

これは、autECLXfer が設定された接続タイプです。 このタイプは、時間の経過とともに変更する場合が あります。ConnType は、String データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Type as String
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
Obj.SetConnectionByName("A")
' Save the type
Type = Obj.ConnType

ConnType プロパティーの接続タイプは、以下のとおりです。

戻されるストリング 意味
DISP3270 3270 ディスプレイ
DISP5250 5250 ディスプレイ
PRNT3270 3270 プリンター
PRNT5250 5250 プリンター
ASCII VT エミュレーション

CodePage

これは、autECLXfer が設定された接続のコード・ページです。 このコード・ページは、時間の経過とともに変更される場合があります。CodePage は、Long データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  CodePage as Long
DIM  Obj as Object
Set Obj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
Obj.SetConnectionByName("A")
' Save the code page
CodePage = Obj.CodePage

Started

これは、エミュレーター・ウィンドウが開始されたかどうかを示します。 ウィンドウがオープンしている場合、値は True です。 その他の場合は False です。Started は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is started.
' The results are sent to a text box called Result.
If Obj.Started = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

CommStarted

これは、ホストへの接続の状況を示しています。 ホストが接続されている場合、値は True です。 その他の場合は False です。CommStarted は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if communications are connected
' for A.  The results are sent to a text box called
' CommConn.
If Obj.CommStarted = False Then
    CommConn.Text = "No"
Else
    CommConn.Text = "Yes"
End If

APIEnabled

これは、エミュレーターが API 使用可能かどうかを示します。API 設定 (パーソナル・コミュニケーションズのウィンドウでは、 「ファイル」->「API の設定」を選択) の状態に応じて、 接続が可能な場合と、接続できない場合があります。エミュレーターが使用可能の場合には、True です。その他の場合には、False です。APIEnabled は、Boolean データ型で読み取り専用です。以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is API enabled.
' The results are sent to a text box called Result.
If Obj.APIEnabled = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

Ready

これは、エミュレーター・ウィンドウが 開始されていて、API 使用可能で、そして接続されているかどうかを示します。 このプロパティーは、3 つのすべてのプロパティーを確認します。 エミュレーターが準備できている場合には、値は True です。 その他の場合には、False です。Ready は、Boolean データ型で読み取り専用です。 以下の例は、このプロパティーを示しています。

DIM  Hand as Long
DIM  Obj as Object
 
Set Obj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
Obj.SetConnectionByName("A")
 
' This code segment checks to see if A is ready.
' The results are sent to a text box called Result.
If Obj.Ready = False Then
  Result.Text = "No"
Else
  Result.Text = "Yes"
End If

autECLXfer メソッド

以下のセクションで、autECLXfer オブジェクトに有効な メソッドを説明します。

void RegisterCommEvent()
void UnregisterCommEvent()
void SetConnectionByName(String Name)
void SetConnectionByHandle(Long Handle)
void SendFile(String PCFile, String HostFile, String Options)
void ReceiveFile(String PCFile, String HostFile, String Options)
void StartCommunication()
void StopCommunication()

RegisterCommEvent

このメソッドは、すべての通信リンク接続/接続解除のイベントの通知を受け取るための オブジェクトを登録します。

プロトタイプ

void RegisterCommEvent()

パラメーター

なし

戻り値

なし

例は、イベント処理の例を参照してください。

UnregisterCommEvent

通信リンク・イベント処理を終了します。

プロトタイプ

void UnregisterCommEvent()

パラメーター

なし

戻り値

なし

SetConnectionByName

この SetConnectionByName メソッドは、 接続名を使用して、新しく作成された autECLXfer オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続名は、短い ID (文字 A から Z、または a から z) です。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

注:
autECLSession 内で autECLXfer オブジェクトを使用している場合は、 これを呼び出さないでください。

プロトタイプ

void SetConnectionByName (String Name)

パラメーター

String Name
1 文字の接続のストリング短縮名 (A から Z、または a から z)。

戻り値

なし

以下の例は、接続名を使用して、新しく作成された autECLXfer オブジェクトの接続を 設定する方法を示します。

DIM  XferObj as Object
 
Set XferObj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
XferObj.SetConnectionByName("A")

SetConnectionByHandle

この SetConnectionByHandle メソッドは、 接続ハンドルを使用して、新しく作成された autECLXfer オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続ハンドルは Long integer です。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、 一度に 1 つの接続 "A" のみをオープンできます。

注:
autECLSession 内で autECLXfer オブジェクトを使用している場合は、 これを呼び出さないでください。

プロトタイプ

void SetConnectionByHandle(Long Handle)

パラメーター

Long Handle
オブジェクトに設定される接続の Long integer 値。

戻り値

なし

以下の例は、接続ハンドルを使用して、新しく作成された autECLXfer オブジェクトの接続を 設定する方法を示します。

DIM  XferObj as Object
DIM  autECLConnList as Object
 
Set XferObj = CreateObject("PCOMM.autECLXfer")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection with the first connection in the list
autECLConnList.Refresh
XferObj.SetConnectionByHandle(autECLConnList(1).Handle)

SendFile

SendFile メソッドは、autECLXfer オブジェクトに関連する 接続について、ワークステーションからホストへファイルを送信します。

プロトタイプ

void SendFile(String PCFile, String HostFile, String Options)

パラメーター

String PCFile
ワークステーション上のファイルの名前。
String HostFile
ホスト上のファイルの名前。
String Options
ホストに依存する転送オプション。 詳細については、使用上の注意を参照してください。

戻り値

なし

使用上の注意

ファイル転送オプションは、ホストに応じて異なります。以下に示すのは、VM/CMS ホストの有効なホスト・オプションの一部です。

サポートされるホストとそれに関連したファイル転送オプションのリストは、 「エミュレーター・プログラミング」を参照してください。

以下の例は、autECLXfer オブジェクトに関連する接続について、 ワークステーションからホストへファイルを送信する方法を示しています。

DIM  XferObj as Object
DIM  autECLConnList as Object
DIM  NumRows as Long
 
Set XferObj = CreateObject("PCOMM.autECLXfer")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection with the first connection in the autECLConnList
autECLConnList.Refresh
XferObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
' For example, send the file to VM
XferObj.SendFile "c:¥windows¥temp¥thefile.txt",
                     "THEFILE TEXT A0",
                     "CRLF ASCII"

ReceiveFile

ReceiveFile メソッドは、autECLXfer オブジェクト に関連する接続について、ホストからワークステーションへファイルを受信します。

プロトタイプ

void ReceiveFile(String PCFile, String HostFile, String Options)

パラメーター

String PCFile
ワークステーション上のファイルの名前。
String HostFile
ホスト上のファイルの名前。
String Options
ホストに依存する転送オプション。 詳細については、使用上の注意を参照してください。

戻り値

なし

使用上の注意

ファイル転送オプションは、ホストに応じて異なります。以下に示すのは、VM/CMS ホストの有効なホスト・オプションの一部です。

サポートされるホストとそれに関連したファイル転送オプションのリストは、「エミュレーター・プログラミング」資料を参照してください。

以下の例は、autECLXfer オブジェクトに関連した接続について、 ホストからファイルを受け取り、それをワークステーションに送信する方法を示しています。

DIM  XferObj as Object
DIM  autECLConnList as Object
DIM  NumRows as Long
 
Set XferObj = CreateObject("PCOMM.autECLXfer")
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
 
' Initialize the connection with the first connection in the list
autECLConnList.Refresh
XferObj.SetConnectionByHandle(autECLConnList(1).Handle)
' For example, send the file to VM
XferObj.ReceiveFile "c:¥windows¥temp¥thefile.txt",
                     	"THEFILE TEXT A0",
                     	"CRLF ASCII"

StartCommunication

StartCommunication 集合要素メソッドは、 ホスト・データ・ストリームに PCOMM エミュレーターを接続します。 これは、PCOMM エミュレーター「通信」メニューを表示して「接続」を選んだ場合と同じ結果になります。

プロトタイプ

void StartCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim XObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set XObj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the session
autECLConnList.Refresh
XObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
XObj.StartCommunication()

StopCommunication

StopCommunication 集合要素メソッドは、 ホスト・データ・ストリームから PCOMM エミュレーターを切断します。 これは、PCOMM エミュレーターの「通信」メニューを表示して 「切断」を選んだ場合 と同じ結果になります。

プロトタイプ

void StopCommunication()

パラメーター

なし

戻り値

なし

以下の例は、PCOMM エミュレーター・セッションをホストへ接続する方法を示しています。

Dim XObj as Object
Dim autECLConnList as Object
 
Set autECLConnList = CreateObject("PCOMM.autECLConnList")
Set XObj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the session
autECLConnList.Refresh
XObj.SetConnectionByHandle(autECLConnList(1).Handle)
 
SessObj.StopCommunication()

autECLXfer イベント

以下のイベントは、autECLXfer に有効です。

void NotifyCommEvent(boolean bConnected)
NotifyCommError()
void NotifyCommStop(Long Reason)

NotifyCommEvent

指定された通信リンクは、接続あるいは接続解除されています。

プロトタイプ

void NotifyCommEvent(boolean bConnected)

パラメーター

boolean bConnected
通信リンクが現在接続されている場合は True で、これ以外の場合は False。

例は、イベント処理の例を参照してください。

NotifyCommError

このイベントは、イベント処理でエラーが発生したときに起こります。

プロトタイプ

NotifyCommError()

パラメーター

なし

例は、イベント処理の例を参照してください。

NotifyCommStop

このイベントは、イベント処理が停止したときに起こります。

プロトタイプ

void NotifyCommStop(Long Reason)

パラメーター

Long Reason
停止の理由コード。現在は、これは常に 0 です。

イベント処理の例

以下は、Xfer イベントの実装方法についての簡単な例です。

Option Explicit
Private WithEvents mXfer As autECLXfer 'AutXfer added as reference
 
sub main()
'Create Objects
Set mXfer = New autECLXfer
mXfer.SetConnectionByName "A" 'Monitor Session A
 
mXfer.RegisterCommEvent ' register for Communications Link updates for session A
 
' Display your form or whatever here  (this should be a blocking call, otherwise sub just ends
call DisplayGUI()
 
mXfer.UnregisterCommEvent 
 
set mXfer= Nothing
End Sub
 
'This sub will get called when the Communication Link Status of the registered
'connection changes
Private Sub mXfer _NotifyCommEvent()
' do your processing here 
End Sub
 
'This event occurs if an error happens in Communications Link event processing 
Private Sub mXfer _NotifyCommError()
'Do any error processing here
End Sub
 
'This event occurs when Communications Status Notification ends
Private Sub mXfer _NotifyCommStop()
'Do any stop processing here
End Sub

autSystem クラス

autSystem クラスは、 プログラム言語によっては存在しないユーティリティー操作を実行するために使用されます。

autSystem メソッド

以下のセクションで、autSystem オブジェクトに 有効なメソッドを説明します。

Long Shell(VARIANT ExeName, VARIANT Parameters, VARIANT WindowStyle)
String Inputnd()

Shell

shell 関数は、実行可能ファイルを実行します。

プロトタイプ

Long Shell(VARIANT ExeName, VARIANT Parameters, VARIANT WindowStyle)

パラメーター

VARIANT ExeName
実行可能ファイルの絶対パスおよびファイル名。
VARIANT Parameters
実行可能ファイルに渡す任意のパラメーター。このパラメーターはオプションです。
VARIANT WindowStyle
実行可能であることを示すための初期ウィンドウ・スタイル。 このパラメーターはオプションで、以下のような値が可能です。
  1. フォーカスあり、通常 (デフォルト)
  2. フォーカスあり、最小化
  3. 最大化
  4. フォーカスなし、通常
  5. フォーカスなし、最小化

戻り値

メソッドは、正常終了の場合はプロセス ID を、失敗した場合はゼロを戻します。

Example autSystem - Shell()

'This example starts notepad with the file c:¥test.txt loaded
dim ProcessID
dim SysObj as object

set SysObj = CreateObject("PCOMM.autSystem")
ProcessID = SysObj.shell "Notepad.exe","C:¥test.txt"
If ProcessID > 0 then
	Msgbox "Notepad Started, ProcessID = " + ProcessID
Else
	Msgbox "Notepad not started"
End if

Inputnd

Inputnd メソッドは、ユーザーに対して表示しないテキスト枠を使用してポップアップ入力ボックスを表示します。 したがって、ユーザーがデータを入力したとき、アスタリスク (*) のみが表示されます。

プロトタイプ

String Inputnd()

パラメーター

なし

戻り値

入力ボックスに入力された文字、また、何も入力されていない場合は、"" が戻されます。

DIM strPassWord
dim SysObj as Object
dim PSObj as Object

set SysObj = CreateObject("PCOMM.autSystem")
set PSObj = CreateObject("PCOMM.autPS")

PSObj.SetConnectionByName("A")
'Prompt user for password
strPassWord = SysObj.Inputnd()
PSObj.SetText(strPasssWord)
DIM  XferObj as Object
 
Set XferObj = CreateObject("PCOMM.autECLXfer")
 
' Initialize the connection
XferObj.SetConnectionByName("A")

autECLPageSettings クラス

autECLPageSettings オブジェクトは、パーソナル・コミュニケーションズ接続のページ設定を制御します。登録 されている名前は、Personal Communications.autECLPageSettings です。 この自動化オブジェクトは VB スクリプトでも使用できます。

読み取り専用プロパティー autECLPageSettings は autECLSession オブジェクトに追加されています。このプロパティーの使用方法については、autECLSession クラスを参照してください。

注:
autECLSession オブジェクト内の autECLPageSettings オブジェクトは、autECLSession オブジェクトにより設定されます。

以下の例は、Visual Basic で autECLPageSettings オブジェクトを作成し、 設定する方法を示しています。

DIM PgSet as Object
Set PgSet = CreateObject("PCOMM.autECLPageSettings")
PgSet.SetConnectionByName("A")

使用上の注意

このオブジェクトは、DBCS および双方向セッションではサポートされません。

最初に、作成したオブジェクトの接続を設定しなければなりません。 SetConnectionByName または SetConnectionByHandle を使用して、 オブジェクトを初期設定します。 接続は一度しか設定できません。接続が設定された後は、接続設定メソッドをさらに呼び出すと例外を引き起こします。 接続を設定せずにプロパティーまたはメソッドにアクセスしようとすると、 例外が引き起こされます。

プロパティー CPI、LPI、および FontSize はプロパティー FaceName によって決定されます。 そのため、FaceName を設定する前に CPI、LPI、または FontSize を設定し、 それらが新しい FaceName に対して有効ではない場合、異なる CPI、LPI、または FontSize 値が接続で再構成される場合があります。CPI、LPI、または FontSize を設定する前に FaceName を設定する必要があります。そうしなかった場合には、FaceName を設定するたびに CPI、LPI、および FontSize を照会して、それらが希望する値であることを確認してください。

制約事項

各メソッドに関連する接続は、メソッドを成功させるために 特定の状態になければなりません。制約事項を満たしていないと、 該当する例外が引き起こされます。

autECLPageSettings オブジェクトのいずれかのプロパティーまたはメソッドが呼び出されるときには、 以下の制約事項を満たしている必要があります。

特定のプロパティーまたはメソッドに対して追加の制約事項が適用される場合があります。

接続タイプ

autECLPageSettings クラス内のメソッドには、以下の接続タイプが有効です。

プロパティーまたはメソッドが、サポートされない接続上でアクセスされたり、呼び出されたりすると、 例外が引き起こされます。ConnType プロパティーを使用して接続タイプを判別してください。

プロパティー

このセクションでは、autECLPageSettings オブジェクトのプロパティーを説明します。

名前 属性
Long CPI 読み取り/書き込み
Boolean FontCPI 読み取り専用
Long LPI 読み取り/書き込み
Boolean FontLPI 読み取り専用
String FaceName 読み取り/書き込み
Long FontSize 読み取り/書き込み
Long MaxLinesPerPage 読み取り/書き込み
Long MaxCharsPerLine 読み取り/書き込み
String Name 読み取り専用
Long Handle 読み取り専用
String ConnType 読み取り専用
Long CodePage 読み取り専用
Boolean Started 読み取り専用
Boolean CommStarted 読み取り専用
Boolean APIEnabled 読み取り専用
Boolean Ready 読み取り専用

CPI

このプロパティーは、1 インチ当たりに印刷される文字数を決定します。これは Long データ型で、読み取り/書き込み可能です。

このプロパティーを事前定義の定数 pcFontCPI に設定して、 「ページ設定 (Page Settings)」の「フォント CPI (Font CPI)」を選択するか、特定の CPI 値に設定します。 接続に FontCPI が構成されているときにこのプロパティーが照会されると、 実際の CPI 値が戻され、定数 pcFontCPI は戻されません。

FontCPI が接続に設定されているかどうかを判別するには、プロパティー FontCPI を使用します。

Dim PgSet as Object
Dim ConnList as Object
Dim CPI as Long

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

CPI = PgSet.CPI ' get the CPI value
' or...
PgSet.CPI = pcFontCPI 'set the connection to use Font CPI.

FontCPI

これは、接続に「フォント CPI (Font CPI)」が設定されているかどうかを判別します。 FontCPI は、Boolean データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

'check if Font CPI is set
If PgSet.FontCPI Then
 ...

LPI

このプロパティーは、1 インチ当たりに印刷される行数を決定します。これは Long データ型で、読み取り/書き込み可能です。このプロパティーを事前定義の定数 pcFontLPI に設定して、 「ページ設定 (Page Settings)」の「フォント LPI (Font LPI)」を選択するか、特定の LPI 値に設定します。 接続に FontLPI が構成されているときにこのプロパティーが照会されると、 実際の LPI 値が戻され、定数 pcFontLPI は戻されません。 FontLPI が接続に設定されているかどうかを判別するには、プロパティー FontLPI を使用します。

Dim PgSet as Object
Dim ConnList as Object
Dim LPI as Long

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

LPI = PgSet.LPI ' get the LPI value
' or...
PgSet.LPI = pcFontLPI 'set the connection to use Font LPI.

FontLPI

このプロパティーは、接続に「フォント LPI (Font LPI)」が設定されているかどうかを判別します。 FontLPI は、Boolean データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

'check if Font LPI is set
If PgSet.FontLPI Then
 ...

FaceName

これは、接続の「ページ設定 (Page Settings)」の「フォント書体名 (Font Face Name)」です。 FaceName は、String データ型で読み取り/書き込み可能です。

Dim PgSet as Object
Dim ConnList as Object
Dim FaceName as String

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)
FaceName = PgSet.FaceName ' get the FaceName
' or...
PgSet.FaceName = "Courier New" 'set the FaceName

FontSize

これは、接続の「ページ設定 (Page Settings)」のフォント・サイズです。FontSize は、Long データ型で読み取り/書き込み可能です。

注:
  1. このプロパティーは、DBCS コード・ページを使用するセッション用です。 SBCS ホスト・コード・ページを使用した接続では、例外が引き起こされます。
  2. FontSize は接続の FaceName によって決定されるため、FontSize を設定する前に FaceName を設定する必要があります。
Dim PgSet as Object
Dim ConnList as Object
Dim FontSize as Long
Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)
FontSize = PgSet. FontSize ' get the FontSize
' or...
PgSet. FontSize = 14 'set the FontSize

MaxLinesPerPage

このプロパティーは、1 ページに印刷可能な最大行数です。 これは、最大印刷行数 または MPL とも呼ばれます。有効値の範囲は 1 から 255 です。これは Long データ型で、読み取り/書き込み可能です。

Dim PgSet as Object
Dim ConnList as Object
Dim MPL as Long

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

MPL = PgSet.MaxLinesPerPage ' get the MaxLinesPerPage
' or...
PgSet.MaxLinesPerPage = 20 'set the MaxLinesPerPage

MaxCharsPerLine

このプロパティーは、1 行に印刷可能な最大文字数です。 これは、最大印刷位置 または MPP とも呼ばれます。有効値の範囲は 1 から 255 です。これは Long データ型で、読み取り/書き込み可能です。

Dim PgSet as Object
Dim ConnList as Object
Dim MPP as Long

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

MPP = PgSet.MaxCharsPerLine ' get the MaxCharsPerLine
' or...
PgSet.MaxCharsPerLine = 80 'set the MaxCharsPerLine

Name

このプロパティーは、autECLPageSettings が設定された接続の 接続名ストリングです。パーソナル・コミュニケーションズは、短い文字 ID (A から Z の単一の英字) のみをストリングで戻します。パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、一度に 1 つの接続 A のみをオープンできます。Name は、String データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object
DIM Name as String

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

Name = PgSet.Name 'Save the name

Handle

このプロパティーは、autECLPageSettings オブジェクトが設定された接続のハンドルです。特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、一度に 1 つの接続 A のみをオープンできます。Handle は、Long データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object
Dim Hand as Long

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

Hand = PgSet.Handle ' save the handle

ConnType

このプロパティーは、autECLPageSettings が設定された接続タイプです。 このタイプは、時間の経過とともに変更される場合があります。 ConnType は、String データ型で読み取り専用です。

ストリング値 接続タイプ
DISP3270 3270 ディスプレイ
DISP5250 5250 ディスプレイ
PRNT3270 3270 プリンター
PRNT5250 5250 プリンター
ASCII VT エミュレーション
Dim PgSet as Object
Dim ConnList as Object
Dim Type as String

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

Type = PgSet.ConnType ' save the type

CodePage

このプロパティーは、autECLPageSettings が設定された接続タイプです。 このタイプは、時間の経過とともに変更される場合があります。 ConnType は、String データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object
Dim CodePage as Long

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

CodePage = PgSet.CodePage ' save the codepage

Started

このプロパティーは、エミュレーター・ウィンドウが開始されたかどうかを示します。 ウィンドウがオープンしている場合、値は True です。 その他の場合は False です。Started は、Boolean データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

' This code segment checks to see if A is started.
' The results are sent to a text box called Result.
If PgSet.Started = False Then
 Result.Text = "No"
Else
 Result.Text = "Yes"
End If

CommStarted

このプロパティーは、ホストへの接続の状況を示しています。ホストが接続されている場合、値は True です。 その他の場合は False です。CommStarted は、Boolean データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

' This code segment checks to see if communications are connected
' for A. The results are sent to a text box called
' CommConn.
If PgSet.CommStarted = False Then
 CommConn.Text = "No"
Else
 CommConn.Text = "Yes"
End If

APIEnabled

このプロパティーは、エミュレーターが API 使用可能かどうかを示します。 API 設定 (パーソナル・コミュニケーションズのウィンドウでは、「編集」->「プリファレンス」->「API」をクリック) の状態に応じて、接続を API 使用可能または使用不可にできます。 エミュレーターが API 使用可能の場合には、値は True です。 その他の場合には、False です。 APIEnabled は、Boolean データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

' This code segment checks to see if A is API-enabled.
' The results are sent to a text box called Result.
If PgSet.APIEnabled = False Then
 Result.Text = "No"
Else
 Result.Text = "Yes"
End If

Ready

このプロパティーは、エミュレーター・ウィンドウが開始されているか、API 使用可能か、接続されているかどうかを示します。このプロパティーは、3 つのすべてのプロパティーを確認します。 エミュレーターが準備できている場合には、値は True です。 その他の場合には、False です。Ready は、Boolean データ型で読み取り専用です。

Dim PgSet as Object
Dim ConnList as Object
Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)
' This code segment checks to see if A is ready.
' The results are sent to a text box called Result.
If PgSet.Ready = False Then
 Result.Text = "No"
Else
 Result.Text = "Yes"
End If

autECLPageSettings メソッド

以下のセクションで、autECLPageSettings オブジェクトに有効なメソッドを説明します。

void RestoreTextDefaults()
void SetConnectionByName (String Name)
void SetConnectionByHandle (Long Handle)

RestoreTextDefaults

RestoreTextDefaults メソッドは、接続の「ページ設定 (Page Setup)」ダイアログの「テキスト」プロパティー・ページのシステム・デフォルト値を復元します。 これは、接続の「ページ設定 (Page Setup)」ダイアログの「テキスト」プロパティー・ページで「デフォルト」ボタンを押すことと同じです。

プロトタイプ

void RestoreTextDefaults()

パラメーター

なし

戻り値

なし

以下の例で、RestoreTextDefaults メソッドを示します。

Dim PgSet as Object
Dim ConnList as Object

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

PgSet.RestoreTextDefaults 'Restores Text Default Settings

SetConnectionByName

この SetConnectionByName メソッドは、接続名を使用して、新しく作成された autECLPageSettings オブジェクトの接続を設定します。 この接続名は、短い文字 ID (A から Z の単一の英字) です。 パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、一度に 1 つの接続 A のみをオープンできます。

注:
autECLSession オブジェクトに含まれる autECLPageSettings オブジェクトを使用している場合には、このメソッドを呼び出さないでください。

プロトタイプ

void SetConnectionByName (String Name)

パラメーター

String Name
1 文字の接続のストリング短縮名。有効値は A から Z です。

戻り値

なし

以下の例は、接続名を使用して、新しく作成された autECLPageSettings オブジェクトの接続を設定する方法を示します。

Dim PgSet as Object
Set PgSet = CreateObject("PCOMM.autECLPageSettings")
' Initialize the connection
PgSet.SetConnectionByName("A")
' For example, see if Font CPI is set
If PgSet.FontCPI Then
'your logic here...
End If

SetConnectionByHandle

この SetConnectionByHandle メソッドは、接続ハンドルを使用して、新しく作成された autECLPageSettings オブジェクトの接続を設定します。 パーソナル・コミュニケーションズでは、この接続ハンドルは Long integer です。 特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、一度に 1 つの接続 A のみをオープンできます。

注:
autECLSession オブジェクトに含まれる autECLPageSettings オブジェクトを使用している場合には、このメソッドを呼び出さないでください。

プロトタイプ

void SetConnectionByHandle(Long Handle)

パラメーター

Long Handle
オブジェクトに設定される接続の Long integer 値。

戻り値

なし

以下の例は、接続ハンドルを使用して、新しく作成された autECLPageSettings オブジェクトの接続を設定する方法を示します。

Dim PgSet as Object
Dim ConnList as Object

Set PgSet = CreateObject("PCOMM.autECLPageSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PgSet.SetConnectionByHandle(ConnList(1).Handle)

' For example, see if Font CPI is set
If PgSet.FontCPI Then
'your logic here...
End If

autECLPrinterSettings クラス

autECLPrinterSettings オブジェクトは、パーソナル・コミュニケーションズ接続のプリンター設定を制御します。登録されている名前は、PCOMM.autECLPrinterSettings です。 この自動化オブジェクトは VB スクリプトでも使用できます。

読み取り専用プロパティー autECLPrinterSettings が autECLSession オブジェクトに追加されています。このプロパティーの使用方法については、autECLSession クラスを参照してください。

注:
autECLSession オブジェクト内の autECLPrinterSettings オブジェクトは、autECLSession オブジェクトにより設定されます。

以下の例は、Visual Basic で autECLPrinterSettings オブジェクトを作成し、設定する方法を示しています。

DIM PrSet as Object
Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
PrSet.SetConnectionByName("A")

使用上の注意

このオブジェクトは、DBCS および双方向セッションではサポートされません。

最初に、作成したオブジェクトの接続を設定しなければなりません。 SetConnectionByName または SetConnectionByHandle を使用して、 オブジェクトを初期設定します。 接続は一度しか設定できません。接続が設定された後は、接続設定メソッドをさらに呼び出すと例外を引き起こします。 接続を設定せずにプロパティーまたはメソッドにアクセスしようとすると、 例外が引き起こされます。

プロパティー CPI、LPI、および FontSize はプロパティー FaceName によって決定されます。 そのため、FaceName を設定する前に CPI、LPI、または FontSize を設定し、 それらが新しい FaceName に対して有効ではない場合、異なる CPI、LPI、または FontSize 値が接続で再構成される場合があります。CPI、LPI、または FontSize を設定する前に FaceName を設定する必要があります。そうしなかった場合には、FaceName を設定するたびに CPI、LPI、および FontSize を照会して、それらが希望する値であることを確認してください。

制約事項

各メソッドに関連する接続は、メソッドを成功させるために 特定の状態になければなりません。制約事項を満たしていないと、 該当する例外が引き起こされます。

autECLPageSettings オブジェクトのいずれかのプロパティーまたはメソッドが呼び出されるときには、 以下の制約事項を満たしている必要があります。

特定のプロパティーまたはメソッドに対して追加の制約事項が適用される場合があります。

プロパティー

このセクションでは、autECLPrinterSettings オブジェクトのプロパティーを説明します。

名前 属性
Boolean PDTMode 読み取り専用
String PDTFile 読み取り専用
Long PrintMode 読み取り専用
String Printer 読み取り専用
String PrtToDskAppendFile 読み取り専用
String PrtToDskSeparateFile 読み取り専用
Boolean PrompDialogOption 読み取り/書き込み
String Name 読み取り専用
Long Handle 読み取り専用
String ConnType 読み取り専用
Boolean CodePage 読み取り専用
Boolean Started 読み取り専用
Boolean CommStarted 読み取り専用
Boolean APIEnabled 読み取り専用
Boolean Ready 読み取り専用

PDTMode

このプロパティーは、接続が PDT モードであるかどうかを判別します。 PDTMode は、Boolean データ型で、読み取り/書き込み可能です。

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

'check if in PDT mode.
If PrSet.PDTMode Then 
 ...

PDTFile

このプロパティーは、接続に PDT ファイルが構成されているかどうかを示します。 このプロパティーは、接続に PDT ファイルが構成されていない場合にはヌル・ストリングを示します。 それ以外の場合、このプロパティーは PDT ファイルの完全修飾パス名を示します。PDTFile は、String データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

If PrSet. PDTFile = vbNullString Then ' get the
  ...
Else
  ...

PrintMode

このプロパティーは、接続の印刷モードを示します。PrintMode は、Long データ型で読み取り専用です。このプロパティーは、次の 4 つの列挙型値のいずれかを戻します。

列挙型定数の名前 説明
1 pcPrtToDskAppend ディスクへの印刷 - コピー追加モード。 これは、接続の「プリンター設定 (Printer Setup)」ダイアログの「プリンター」リスト・ボックスで「ディスクへの印刷」->「コピー追加」オプションが選択されていることを意味します。
2 pcPrtToDskSeparate ディスクへの印刷 - 別個モード。 これは、接続の「プリンター設定 (Printer Setup)」ダイアログの「プリンター」リスト・ボックスで 「ディスクへの印刷」->「別個」オプションが選択されていることを意味します。
3 pcSpecificPrinter 特定のプリンター・モード。 これは、接続の「プリンター設定 (Printer Setup)」ダイアログの「プリンター」リスト・ボックスでいずれかのプリンターが選択されて、「Windows のデフォルト・プリンターを使用 (Use Windows Default Printer)」チェック・ボックスがクリアされていることを意味します。
4 pcWinDefaultPrinter Windows® のデフォルト・プリンター・モード。これは、「Windows のデフォルト・プリンターを使用 (Use Windows Default Printer)」チェック・ボックスが選択されていることを意味します。
Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

If PrSet.PrintMode = pcPrtToDskAppend Then
  ... 
ElseIf PrSet.PrintMode = pcPrtToDskSeparate Then
  ...
ElseIf PrSet.PrintMode = pcSpecificPrinter Then
  ...
ElseIf PrSet.PrintMode = pcWinDefaultPrinter Then
  ...

Printer

このプロパティーは、プリンターの名前です。これには、以下のいずれかが入ります。

Printer は、String データ型で読み取り専用です。

値の形式は次のようにする必要があります。

<Printer name> on <Port Name>

例えば、次のようになります。

Dim PrSet as Object
Dim ConnList as Object
Dim Printer as String

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

Printer = PrSet.Printer ' get the Printer Name

PrtToDskAppendFile

このプロパティーは、ディスクへの印刷 - コピー追加モードのファイル・セットの名前です。 このファイルは、ディスクへの印刷 - コピー追加 ファイルと呼ばれます。このプロパティーには、以下のいずれかが入ります。

PrtToDskAppendFile は、String データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object
Dim DskAppFile as String

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

DskAppFile = PrSet. PrtToDskAppendFile ' get the Disk append file.

PrtToDskSeparateFile

このプロパティーは、ディスクへの印刷 - 別個モードのファイル・セットの名前です。 このファイルは、ディスクへの印刷 - 別個 ファイルと呼ばれます。このプロパティーには、以下のいずれかが入ります。

PrtToDskSeparateFile は、String データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object
Dim DskSepFile as String

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

DskSepFile = PrSet. PrtToDskSeparateFile ' get the Disk separate file.

PromptDialogOption

このプロパティーは、 印刷前に「プリンター設定 (Printer Setup)」ダイアログを表示するオプションが設定されているかどうかを示します。PromptDialogOption は、Boolean データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object
Dim PromptDialog as Boolean

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

PromptDialog = PrSet.PromptDialogOption ' get the Prompt Dialog option
' or...
PrSet.PromptDialogOption = True 'set the Prompt Dialog option

Name

このプロパティーは、autECLPrinterSettings が設定された接続の 接続名ストリングです。パーソナル・コミュニケーションズは、短い文字 ID (A から Z の単一の英字) のみをストリングで戻します。パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、一度に 1 つの接続 A のみをオープンできます。Name は、String データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object
DIM Name as String

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

Name = PrSet.Name 'Save the name

Handle

このプロパティーは、autECLPrinterSettings オブジェクトが設定された接続のハンドルです。特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、一度に 1 つの接続 A のみをオープンできます。Handle は、Long データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object
Dim Hand as Long

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

Hand = PrSet.Handle ' save the handle

ConnType

このプロパティーは、autECLPrinterSettings が設定された接続タイプです。 このタイプは、時間の経過とともに変更される場合があります。 ConnType は、String データ型で読み取り専用です。

ストリング値 接続タイプ
DISP3270 3270 ディスプレイ
DISP5250 5250 ディスプレイ
PRNT3270 3270 プリンター
PRNT5250 5250 プリンター
ASCII VT エミュレーション
Dim PrSet as Object
Dim ConnList as Object
Dim Type as String

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

Type = PrSet.ConnType ' save the type

CodePage

このプロパティーは、autECLPrinterSettings が設定された接続のコード・ページです。このコード・ページは、時間の経過とともに変更される場合があります。 CodePage は、Long データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object
Dim CodePage as Long

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

CodePage = PrSet.CodePage ' save the codepage

Started

このプロパティーは、エミュレーター・ウィンドウが開始されたかどうかを示します。 ウィンドウがオープンしている場合、値は True です。 その他の場合は False です。Started は、Boolean データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

' This code segment checks to see if A is started.
' The results are sent to a text box called Result.
If PrSet.Started = False Then
 Result.Text = "No"
Else
 Result.Text = "Yes"
End If

CommStarted

このプロパティーは、ホストへの接続の状況を示しています。ホストが接続されている場合、値は True です。 その他の場合は False です。CommStarted は、Boolean データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

' This code segment checks to see if communications are connected
' for A. The results are sent to a text box called
' CommConn.
If PrSet.CommStarted = False Then
 CommConn.Text = "No"
Else
 CommConn.Text = "Yes"
End If

APIEnabled

このプロパティーは、エミュレーターが API 使用可能かどうかを示します。 API 設定 (パーソナル・コミュニケーションズのウィンドウでは、「編集」->「プリファレンス」->「API」をクリック) の状態に応じて、接続を API 使用可能または使用不可にします。

エミュレーターが API 使用可能の場合には、値は True です。 その他の場合には、False です。 APIEnabled は、Boolean データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

' This code segment checks to see if A is API-enabled.
' The results are sent to a text box called Result.
If PrSet.APIEnabled = False Then
 Result.Text = "No"
Else
 Result.Text = "Yes"
End If

Ready

このプロパティーは、エミュレーター・ウィンドウが開始されているか、API 使用可能か、接続されているかどうかを示します。このプロパティーは、3 つのすべてのプロパティーを確認します。 エミュレーターが準備できている場合には、値は True です。 その他の場合には、False です。Ready は、Boolean データ型で読み取り専用です。

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

' This code segment checks to see if A is ready.
' The results are sent to a text box called Result.
If PrSet.Ready = False Then
 Result.Text = "No"
Else
 Result.Text = "Yes"
End If

autECLPrinterSettings メソッド

以下のセクションで、autECLPrinterSettings オブジェクトに有効なメソッドを説明します。

void SetPDTMode(Boolean bPDTMode, [optional] String PDTFile)
void SetPrtToDskAppend( [optional] String FileName)
void SetPrtToDskSeparate([optional] String FileName)
void SetSpecificPrinter(String Printer)
void SetWinDefaultPrinter()
void SetConnectionByName (String Name)
void SetConnectionByHandle (Long Handle)

SetPDTMode

SetPDTMode メソッドは、所定の PDT ファイルによって PDT モードに接続を設定するか、非 PDT モード (GDI モード とも呼ばれる) に接続を設定します。

制約事項

このメソッドが bPDTMode を False に設定して呼び出される場合には、 関連する接続の PrintMode が既に SpecificPrinter または WinDefaultPrinter に設定されている必要があります。

プロトタイプ

void SetPDTMode(Boolean bPDTMode, [optional] String PDTFile)

パラメーター

Boolean bPDTMode
可能な値は、以下のとおりです。
String PDTFile
このオプショナル・パラメーターには PDT ファイル名が入ります。

このパラメーターは、bPDTMode が TRUE の場合にのみ使用されます。 このパラメーターが指定されていない場合に、bPDTMode が TRUE に設定されると、接続に構成されている PDT ファイルが使用されます。 接続にまだ PDT ファイルが構成されていない場合、このメソッドは例外をスローして失敗します。

bPDTMode が FALSE の場合、このパラメーターは無視されます。

可能な値は、以下のとおりです。

戻り値

なし

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

PrSet.SetPDTMode(True, "epson.pdt") 'Set PDT mode
PrSet.SetPDTMode(False) 'Set non-PDT mode (also called GDI mode)

SetPrtToDskAppend

このメソッドは、接続の PrintMode をディスクへの印刷 - コピー追加モードに設定します。 これは、このモードに該当するファイルも設定します。

注:
  1. このファイルを設定するフォルダーには書き込みアクセス権限が必要です。権限がない場合、 このメソッドは例外をスローして失敗します。
  2. 関連する接続は PDT モードにする必要があります。

プロトタイプ

void SetPrtToDskAppend( [optional] String FileName)

パラメーター

String FileName
このオプショナル・パラメーターには、ディスクへの印刷 - コピー追加ファイルの名前が入ります。

ファイルが存在する場合には、それが使用されます。それ以外の場合、 印刷の完了時に作成されます。

可能な値は、以下のとおりです。

このパラメーターが指定されていない場合、 接続の この PrintMode に構成されているファイルが使用されます。 接続にまだファイルが構成されていないと、このメソッドは例外をスローして失敗します。

戻り値

なし

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

'If PDTMode, set PrintMode to pcPrtToDskAppend
If PrSet.PDTMode Then
 PrSet.SetPrtToDskAppend("dskapp.txt") 

SetPrtToDskSeparate

このメソッドは、接続の PrintMode をディスクへの印刷 - 別個モードに設定します。 これは、このモードに該当するファイルも設定します。

注:
  1. このファイルを設定するフォルダーには書き込みアクセス権限が必要です。権限がない場合、 このメソッドは例外をスローして失敗します。
  2. 関連する接続は PDT モードにする必要があります。

プロトタイプ

void SetPrtToDskSeparate([optional] String FileName)

パラメーター

String FileName
このオプショナル・パラメーターには、ディスクへの印刷 - 別個ファイルの名前が入ります。

このパラメーターが指定されていない場合、 接続でこの PrintMode に構成されているファイルが使用されます。

可能な値は、以下のとおりです。

注:
ファイル名には拡張子を入れないでください。拡張子が入っていると、このメソッドは例外をスローして失敗します。

戻り値

なし

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

'If PDTMode, set PrintMode to pcPrtToDskSeparate
If PrSet.PDTMode Then
 PrSet.SetPrtToDskSeparate("dsksep")

SetSpecificPrinter

このメソッドは、接続の PrintMode を Printer パラメーターで指定されたプリンターによって特定のプリンター・モードに設定します。

プロトタイプ

void SetSpecificPrinter(String Printer)

パラメーター

String Printer
プリンターの名前が入ります。プリンターが存在しない場合、このメソッドは例外をスローして失敗します。

値の形式は次のようにする必要があります。

<Printer name> on <Port Name>

例えば、次のようになります。

戻り値

なし

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

'Set PrintMode to pcSpecificPrinter
PrSet. SetSpecificPrinter("IBM InfoPrint 40 PS on Network Port") 

SetWinDefaultPrinter

このメソッドは、接続の PrintMode を Windows のデフォルト・プリンター・モードに設定します (接続は Windows のデフォルト・プリンターを使用します)。Windows のデフォルト・プリンターが構成されていない場合、 このメソッドは例外をスローして失敗します。

プロトタイプ

void SetWinDefaultPrinter()

パラメーター

なし

戻り値

なし

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

'Set PrintMode to pcWinDefaultPrinter
PrSet. SetWinDefaultPrinter

SetConnectionByName

この SetConnectionByName メソッドは、接続名を使用して、新しく作成された autECLPrinterSettings オブジェクトの接続を設定します。パーソナル・コミュニケーションズ では、この接続名は、短い接続 ID (A から Z の単一の英字) です。パーソナル・コミュニケーションズ接続でオープンできるのは、1 つの 名前につき 1 つしかありません。例えば、一度に 1 つの接続 A のみをオープンできます。

注:
autECLSession オブジェクトに含まれる autECLPrinterSettings オブジェクトを使用している場合には、このメソッドを呼び出さないでください。

プロトタイプ

void SetConnectionByName (String Name)

パラメーター

String Name
1 文字の接続のストリング短縮名。有効値は A から Z です。

戻り値

なし

以下の例は、接続名を使用して、新しく作成された autECLPrinterSettings オブジェクトの接続を設定する方法を示します。

Dim PrSet as Object
Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
' Initialize the connection
PrSet.SetConnectionByName("A")
' For example, see if PDTMode 
If PrSet.PDTMode Then
'your logic here...
End If

SetConnectionByHandle

この SetConnectionByHandle メソッドは、接続ハンドルを使用して、新しく作成された autECLPrinterSettings オブジェクトの接続を設定します。パーソナル・コミュニケーションズでは、この接続ハンドルは Long integer です。

特定の 1 つのハンドルに対して 1 つしか、 パーソナル・コミュニケーションズ接続をオープンできません。例えば、一度に 1 つの接続 A のみをオープンできます。

注:
autECLSession オブジェクトに含まれる autECLPrinterSettings オブジェクトを使用している場合には、このメソッドを呼び出さないでください。

プロトタイプ

void SetConnectionByHandle(Long Handle)

パラメーター

Long Handle
オブジェクトに設定される接続の Long integer 値。

戻り値

なし

以下の例は、接続ハンドルを使用して、新しく作成された autECLPrinterSettings オブジェクトの接続を設定する方法を示します。

Dim PrSet as Object
Dim ConnList as Object

Set PrSet = CreateObject("PCOMM.autECLPrinterSettings")
Set ConnList = CreateObject("PCOMM.autECLConnList")
' Initialize the connection
ConnList.Refresh
PrSet.SetConnectionByHandle(ConnList(1).Handle)

' For example, see if PDTMode 
If PrSet.PDTMode Then
'your logic here...
End If

自動化オブジェクトへのプライマリー相互運用アセンブリーのサポート

IBM パーソナル・コミュニケーションズによって公開されている自動化オブジェクトは、.NET フレームワークをターゲットとする任意の言語で作成されたアプリケーションによって使用できます。管理対象の .NET アプリケーションは、自動化オブジェクトをラップするプライマリー相互運用アセンブリー (PIA) を使用して、パーソナル・コミュニケーションズをプログラミングできます。 相互運用アセンブリーは、管理対象の (.NET) アプリケーションが COM 準拠オブジェクトを使用する際のメカニズムです。相互運用アセンブリーには、バインディングおよびメタデータ情報が含まれ、 これにより、.NET フレームワーク (CLR) は COM オブジェクトをロードまたはマーシャルして、.NET アプリケーション用にラップできます。 PIA には、COM 型の提供者によって定義された COM 型の正式な記述が含まれます。 PIA は、必ずオリジナルの COM 型の提供者によってデジタル署名されています。

.NET アプリケーションがアセンブリーを参照できる方法は 2 つあります。

相互運用アセンブリーによって公開されている型のプログラミング・モデルは COM とよく似ています。COM オブジェクトによって公開されているメソッド、プロパティー、 およびイベントは、いずれの .NET 言語でもその言語の構文を使用してアクセスできます。 C# で作成されたサンプル・アプリケーション (ECLSamps.net) がパーソナル・コミュニケーションズのインストール・イメージの ¥samples ディレクトリーに提供されています。このサンプルは、 相互運用アセンブリーのさまざまな型の単純な使用法を示します。

Visual Basic 6.0 で、パーソナル・コミュニケーションズの自動化オブジェクトを使用し、 変換支援ウィザードを使用して Visual Basic .NET に移行したプロジェクトでは、 ユーザーは、対応するパーソナル・コミュニケーションズ相互運用参照 (¥Interops ディレクトリー) を使用して変換支援ウィザードによって暗黙で 生成される参照を置換して、再コンパイルするだけです。参照を置換する方法は、 変換支援によって生成されたすべての参照を削除し、Visual Studio .NET を使用して .NET 相互運用参照を追加します。GAC に登録してあるアセンブリーを使用する場合、 参照を追加して、パーソナル・コミュニケーションズ 相互運用参照の「ローカルのコピー (Copy Local)」プロパティーを「False」に設定します。

パーソナル・コミュニケーションズのエミュレーター自動化オブジェクトの PIA は、パーソナル・コミュニケーションズのインストール・イメージの ¥Interops ディレクトリーにインストールされます。 パーソナル・コミュニケーションズ製品インストーラーによって .NET フレームワークが存在することが検出された場合、GAC 内に型を登録するための追加オプションが提供されます。 GAC にアセンブリーをインストールすると、PIA は対応する型ライブラリーのレジストリー・キーの下のレジストリーにも置かれます。

表 2 に、パーソナル・コミュニケーションズの自動化オブジェクトに提供される PIA をリストします。

表 2. パーソナル・コミュニケーションズの自動化オブジェクトのプライマリー相互運用アセンブリー
自動化オブジェクト 相互運用アセンブリー依存関係
autECLConnList Interop.AutConnListTypeLibrary.dll
autECLConnMgr Interop.AutConnMgrTypeLibrary.dll
autECLConnList Interop.AutPSTypeLibrary.dll
autECLOIA Interop.AutOIATypeLibrary.dll
autECLPS Interop.AutPSTypeLibrary.dll
autECLScreenDesc Interop.AutScreenDescTypeLibrary.dll
autECLScreenReco Interop.AutScreenRecoTypeLibrary.dll
autECLSession Interop.AutSessTypeLibrary.dll
autECLPageSettings Interop.AutSettingsTypeLibrary.dll
autECLPrinterSettings Interop.AutSettingsTypeLibrary.dll
autECLWinMetrics Interop.AutWinMetricsTypeLibrary.dll
autECLXfer Interop.AutXferTypeLibrary.dll
autSystem Interop.AutSystemTypeLibrary.dll