Top_Page
RasDialコマンドを使う
1.はじめに
Windowsパソコンでモデムを使用する際、COMポートに接続するタイプはユーザープログラムからも使用し易いのですが、拡張ボードタイプで専用のデバイスとしてしかOSから認識されないモデムの場合は、ユーザープログラムから使用するにはRAS
APIを使う事になります。該当の拡張ボードがAPIから完全にコントロールできるかどうかは別にしても、APIを使う事になると、プログラムの難度が上がってしまいます。また、動作の確認にも手がかかります。
しかし、専用デバイスとしてしか見えないモデムも、WindowsのGUIからはCOMポートに接続するタイプと区別無く使用する事ができます。これは内部で同じ扱いになるようになっている訳ですが、そうであれば、Windowsのユーザーインターフェースに近いコマンドを呼び出してやれば、タイプに関係なく利用する事ができるという事になります。
目論見としては、モデム自体のコントロールは最低限で汎用性を持たせ、かつメーカー側でテストされているであろう使い方で安定性を求め、通信部分だけ自前でプログラムして完成度を高めるという事を考えてみます。
Windowsの標準コマンドで、コマンドラインで使用できるコマンドを探すと、「RasDial」コマンドが用意されています。GUIでエントリさえ作っておけば、RasDialコマンドを呼び出すだけでダイアルアップの機能を使用する事ができ、この部分のプログラムはかなり簡略化できます。
2.WindowsXPで使ってみる(ダイヤルアップ設定)
まずは、ダイヤルアップ先のエントリを作る必要があります。
コントロールパネルのネットワーク接続に新しい接続を作成します。
「新しい接続を作成する」をタスクから選択し、ウィザードを開始します。
「職場のネットワークへ接続する」を選択し、ダイヤルアップ接続を選択します。
接続名と電話番号を指定してエントリを作成します。
ネットワーク接続のウィンドウに接続名でアイコンが作成されるので、プロパティを必要に応じて調整します。
(モデムが接続されていれば、接続の方法に表示されます)
(リダイヤルの回数や間隔は相手先に確認しておく必要があります)
(多分TCP/IPで使用する事になる可能性が高いと思いますが、この辺は運用に合わせて設定します)
3.WindowsXPで使ってみる(着信設定)
接続される側には、着信設定を作成します。
着信側のパソコンのコントロールパネルのネットワーク接続に新しい接続を作成します。
「詳細接続をセットアップする」を選択します。
「着信接続を受け付ける」を選択します。
着信を受け付けるデバイスを選択します。(モデムが接続されていれば、一覧に表示されますので、それを選択します)
ネットワーク接続のウィンドウに着信接続のアイコンが作成されます。
4.コマンドの実行
ダイヤルアップ側、着信側ともに電話回線に接続し、ダイヤルアップ側のコマンドプロンプトを開きます。
rasdial [接続名]で実行します。
(この例では、モデムが接続されていないのでエラーになっています)
ダイヤルアップ動作が行われます。モデムのモニタ機能が有効になっていれば、発信音がするはずです。
RASサーバーの着信接続の準備が出来ていれば、RASサーバーに接続されます。
(接続された旨のメッセージが表示されます)
rasdialコマンドを実行すると、現在接続があるかどうかを確認できます。
rasdial [接続名] /DISCONNECTを実行すると、切断動作が行われます。
(この例では元々接続されていないので接続なしですが、接続されていれば、切断されましたのメッセージが出ます。
接続されれば、ipconfigコマンドやpingコマンドなどでIPアドレスの割り当てや接続を確認できます。
これで動作が確認できれば、プログラムからはrasdialコマンドを呼び出して接続・切断、現在のステータス取得ができます。
Top_Page
(C) Copyright 2000-2010 KaZuDo