テクニカルノート01:

コントロールの概要

August 23, 2003

© NSB Corporation. All rights reserved.

Go to English page.

  

NS Basic/CE では、ActiveXコントロールと呼ばれる外部ルーチンを使うことができます。それらはマイクロソフト、NS Basic Corporation、またはサードパーティから提供されています。また、eMbedded Visual C++を使って、新しいものを開発できます。

ActiveXコントロールの開発に関する情報は、How to Write and Use ActiveX Controls for Windows CE 3.0(英文)を参照してください。

マイクロソフトの標準ActiveXコントロール

NS Basic/CEのインストールの際、ROMにまだ入っていなければ、全てのWindows CE用のMicrosoft ActiveXコントロールがインストールされ、登録が行われます。

お使いのWinCEデバイスにコントロールのインストールが終ると、addObjectステートメントを使用して、コントロ−ルからオブジェクトが作成できます。各コントロールの詳細につきましては、当社テクニカルノートを参照してください。マイクロソフトもeMbedded Visual Basicツールキットの一部としてドキュメントを提供しています。それらはマイクロソフトのウェブサイトから入手してください。

全てのActiveXコントロールは、問題なく動作すると言いたいところですが、中には問題が含まれています。しかしながら、それらのコントロールは貴重な付属物であり、98年12月のアップデートで著しく改善されました。NS Basic/CE 2.0以降では、それらのアップデートされたコントロールをインストールします。

マイクロソフトのActiveXコントロールは、他のテクニカルノートで資料が提供されています。また、マイクロソフトのウェブサイトでも情報が提供されています。

さらに、多くのサードパーティコントロールがNS Basicで利用可能ですので、マイクロソフトのコントロールの代わりに使うこともできます。サードパーティコントロールは、一般的にバグが少なく、多くの追加機能が含まれています。

Visual Basic for CE Redistributable Kit (VBCERK) 1.0

これはマイクロソフトからの標準ActiveXコントロールのコレクションで、あなたのアプリケーションと一緒に配布可能です。これらのファイルはCPUタイプごとに分けられいてます。インストーラはありませんので、インストーラを作るか、ActiveSync Explorerを使ってファイルをデバイスの\Windowsフォルダーに移してください。

HPC、HPC ProまたはHPC 2000上でコントロールの登録方法

Palm-sizeデバイス上でのコントロールの登録方法

Pocket PC上でのコントロールの登録方法

NS Basic/CEからコントロールの登録方法

時に、コントロールを登録する一番簡単な方法はNS Basic/CEから行うことです。NS Basic/CEのSHELLEXECUTEコマンドを使用します。

SHELLEXECUTE "open","regsvrce.exe","S309Picture.dll"

サードパーティのActiveXコントロールをプログラムに追加する方法

NS Basic/CEでは、サードパーティのコントロールを簡単に使えます。Windows CE用に書かれた大抵のActiveXコントロールは動きます。AddObjectステートメント(ハンドブックを参照)を使ってコントロールをプロジェクトに追加してください。

AddObjectの最初の引数はコントロールのClassIDです。これはファイル名とは違います。HKEY_CLASSES_ROOTのWindows CEレジストリにある名前です。この名前はコントロールの作者から得るか、Registry Editor(eMbedded Visual Basicに付属)などのツールを使ってレジストリを見てください。デスクトップ版があるコントロールでも、Windows CE版のClassIDは異なるのが一般的ですので、確認して下さい。

オブジェクトが視覚的なものか、イベントを発生するものの場合、AddObjectの最後の4つの引数を必ず渡さなければなりません。

Frame内にサードパーティのコントロールを入れる方法

例えば使いたいActiveXコントロールが、Show/Hide等のメソードやプロパティーを持っていない場合、Frameコントロールの中に入れることにより、このFrameへのメソッドが自動的に中に入っているコントロールにも適用されます。サードパーティのコントロールをFrameの子供にするには、FrameのHWNDを、中に入れるコントロールの"parent HWND"に代入します。しかし、使いたいコントロールが"parent HWND"プロパティーを持たない場合が多々ありますので、その時は以下のように、MGCEWin32コントロールをお使い下さい。

    lWnd = API.WindowFromPoint(x,y)          ' API as MGCEWin32
    lChild = API.GetWindow(lWnd, WINDOWNER)

    API.WindowParent(lChild) = Frame.hWnd    ' assign frame's hWnd

lChildはMGCEWin32の他の関数の組み合わせでも取得できるかもしれません。

NS Basic/CE用のActiveXコントロール

これらはNS Basic/CEで動作が確認されているActiveXコントロールです。これ以外にご存じの方はnipponsupport@nsbasic.comへご連絡下さい。

ClassID 説明 タイプ ドキュメント
ADOCE.recordset データベースオブジェクト Microsoft ActiveX Tech Note 10
ADOCE.recordset.3.0 データベースオブジェクト - Pocket PC Microsoft ActiveX Tech Note 10
AppLaunch.Launch ファイルランチャー Microsoft ActiveX AppLaunch
ASpriteCE.Game ゲームコントロール Third Party ActiveX SpriteHand
AWaveCE.Sound オーディオコントロール Third Party ActiveX SpriteHand
CFADO.Connection データベースとの接続 Third Party ActiveX ODYSSEY
CFADO.Recordset SQLステートメントからレコードを開く Third Party ActiveX ODYSSEY
CFFILE.Transfer デバイスとサーバー間のファイル送信 Third Party ActiveX ODYSSEY
CEFusion.CfClient2 CEFusionオブジェクトの低レベル通信 Third Party ActiveX ODYSSEY
CeDateTime.DateTime 日付/時間 コントロール Third Party ActiveX ComMEDIA
CeLocale.Locale 地域 コントロール Third Party ActiveX ComMEDIA
CeMCalendar.MCalendar 月カレンダー コントロール Third Party ActiveX ComMEDIA
CePopupMenu.PopupMenu ポップアップメニュー コントロール Third Party ActiveX ComMEDIA
CeProgressBar.ProgressBar プログレスバー コントロール Third Party ActiveX ComMEDIA
CeSettings.Settings 設定 コントロール Third Party ActiveX ComMEDIA
CeTrayIcon.TrayIcon トレイ アイコン コントロール Third Party ActiveX ComMEDIA
CFMts.Object 遠隔オブジェクト Third Party ActiveX ODYSSEY
CfMq.MsgQueue.1 メッセージ キュー Third Party ActiveX ODYSSEY
Checkbox 標準チェックボックス NSB標準 ハンドブック参照
Combobox 標準コンボボックス NSB標準 ハンドブック参照
ComboBoxThingo.ComboBoxThing 拡張コンボボックス Third Party ActiveX ComboBoxThingo
Comm シリアル通信 Microsoft ActiveX Tech Note 04
CommandButton 標準コマンドボタン NSB標準 ハンドブック参照
Date 標準日付セレクター NSB標準 ハンドブック参照
DataViewer.DataViewer バーチャル リストビュウ Third Party ActiveX ODYSSEY
Dialog 標準ダイアログ Microsoft ActiveX Tech Note 08
DialogX カスタム ダイアログボックス-Rev 3.01以降 Big Red Toolbox DialogX
EasyInk.InkControl シグニチャーキャプチャ Third Party ActiveX ODYSSEY
File ファイル I/O Microsoft ActiveX Tech Note 03
FileSystem ファイルシステム ファンクション Microsoft ActiveX Tech Note 02
Finance 財務ファンクション Microsoft ActiveX Tech Note 11
Frame オブジェクトを括るフレーム NSB標準 ハンドブック参照 (新)
Grid スプレッドシート型インターフェース Microsoft ActiveX Tech Note 06
Hscrollbar 水平スクロールバー NSB標準 ハンドブック参照 (新)
IDSSAPI.Core Core API Third Party ActiveX IDSSAPI
IDSSAPI.Inet FTP通信 Third Party ActiveX IDSSAPI
IDSSAPI.Memory システムメモリーアクセス Third Party ActiveX IDSSAPI
IDSSAPI.Power バッテリー情報 Third Party ActiveX IDSSAPI
IDSSAPI.WindowHelper ウィンドウヘルパー Third Party ActiveX IDSSAPI
Image ImageList, TreeViewヘルパー Microsoft ActiveX Tech Note 20
ImageList イメージのリスト Microsoft ActiveX Tech Note 21
InVision.iSignIt シグニチャーキャプチャ Third Party ActiveX inVision
InetThingo.InetThing HTTP通信 Third Party ActiveX InetThingo
IPWorks.FTP FTP通信 Big Red Toolbox IP*Works
IPWorks.HTTP HTTP通信 Big Red Toolbox IP*Works
IPWorks.ICMPPort IPレイヤーへのアクセス Big Red Toolbox IP*Works
IPWorks.IMAP IMAP4クライアント Big Red Toolbox IP*Works
IPWorks.IPDaemon TCP/IPサーバー Big Red Toolbox IP*Works
IPWorks.IPInfo DNSおよび他のデータベース関数 Big Red Toolbox IP*Works
IPWorks.IPPort Winsockストリームソケットへのアクセス Big Red Toolbox IP*Works
IPWorks.LDAP LDAPディレクトリサーバーへのアクセス Big Red Toolbox IP*Works
IPWorks.MCast マルチキャストコントロール Big Red Toolbox IP*Works
IPWorks.MIME MIMEエンコード/デコード Big Red Toolbox IP*Works
IPWorks.MX ドメインサーバー検索 Big Red Toolbox IP*Works
IPWorks.NetCode

UUencode, Base64, Quoted Printable, URL エンコード/デコード

Big Red Toolbox IP*Works
IPWorks.NetDial Windows RAS APIアクセス Big Red Toolbox IP*Works
IPWorks.NNTP USENET news コントロール Big Red Toolbox IP*Works
IPWorks.POP POP3およびPOP2サーバーアクセス Big Red Toolbox IP*Works
IPWorks.Rexec rexecプロトコルを使ったリモートコマンド実行 Big Red Toolbox IP*Works
IPWorks.Rshell リモートシェルを使ったリモートコマンド実行 Big Red Toolbox IP*Works
IPWorks.SMTP メールの送信 Big Red Toolbox IP*Works
IPWorks.SNMP SNMPプロトコルへのインターフェース Big Red Toolbox IP*Works
IPWorks.SNPP 標準Pagingゲートウェイ Big Red Toolbox IP*Works
IPWorks.Telnet Telnetクライアントへのインターフェース Big Red Toolbox IP*Works
IPWorks.UDPPort UDPポケット通信へのインターフェース Big Red Toolbox IP*Works
Label ラベル NSB標準 ハンドブック参照
ListBox リストボックス NSB標準 ハンドブック参照
ListView アイテム表示 Microsoft ActiveX Tech Note 22
MGCEBarsNPops.PopupMenu ポップアップメニュー Big Red Toolbox MGCEBarsNPops
MGCEBarsNPops.Progress 標準Windows CEプログレスバー Big Red Toolbox MGCEBarsNPops
MGCEBarsNPops.Scrollbar 標準Windows CEスクロールバー Big Red Toolbox MGCEBarsNPops
MGCEBarsNPops.StatusBar Windows CEステータスバーへのアクセス Big Red Toolbox MGCEBarsNPops
MGCEBarsNPops.Trackbar 横/縦トラックバー Big Red Toolbox MGCEBarsNPops
MGCEBarsNPops.VUMeter 横/縦レベル表示メーター Big Red Toolbox MGCEBarsNPops
MGCEListView.ListView リストビュー Big Red Toolbox MGCEListView
MGCEMail.Mail メールクライアント Big Red Toolbox MGCEMail
MGCENet.IPAddress IPアドレスコントロール Big Red Toolbox MGCENet
MGCENet.HTML HTMLコントロール Big Red Toolbox MGCENet
MGCERichEdit.RichEdit Rich editコントロール Big Red Toolbox MGCERichEdit
MGCERichInk.RichInk Rich ink (scratchpad) コントロール Big Red Toolbox MGCERichInk
MGCETreeView.TreeView ツリービュー Big Red Toolbox MGCETreeView
MGCEWin32.API Win32 API Big Red Toolbox MGCEWin32
MGCEWin32.Tray システムトレイへのアクセス Big Red Toolbox MGCEWin32
MGCEWin32.Registry Windows CEレジストリアクセス Big Red Toolbox MGCEWin32
MGCEWin32.Timer タイマーイベント Big Red Toolbox MGCEWin32
MGCEWin32.RAS Remote Access APIへのアクセス Big Red Toolbox MGCEWin32
Nickellie.NCrypto 暗号化ツール Third Party ActiveX NICKELLIE
NSBasic.DialogX.1 カスタムダイアログボックス Big Red Toolbox DialogX
OptionButton ラジオボタン NSB標準 ハンドブック参照
OSIUtil.Collection コレクション オブジェクト Third Party ActiveX ODYSSEY
OSIUtil.File ファイル オブジェクト Third Party ActiveX ODYSSEY
OSIUtil.Registry レジストリ オブジェクト Third Party ActiveX ODYSSEY
OSIUtil.Win32 Win32 オブジェクト Third Party ActiveX ODYSSEY
Output 実行時のバックグランド NSB標準 ハンドブック参照
PictureBox ピクチャーとテキスト Microsoft ActiveX Tech Note 07
pocketOutlook.application 標準のコンタクトおよびタスクデータベースへのアクセス Microsoft ActiveX Tech Note 19
Pocketsoap.Envelope.2 SOAPクライアントオブジェクト Third Party ActiveX PocketSOAP
Pocketsoap.HTTPTransport.2 SOAPクライアントHTTPオブジェクト Third Party ActiveX PocketSOAP
PPChart.Chart 円、線、棒、ストック グラフ Third Party ActiveX PPChart
PrEngineCE.PrinterCE 印刷 Third Party ActiveX PrinterCE
pspcmenubar.menubar.1 Pocket PC用のMicrosoftメニューバー コントロール Microsoft ActiveX MSDN
RegistryControl.RegCtl オーナー情報 Microsoft ActiveX OwnerInfo
RGridCtrl.Grid グリッドコントロール Third Party ActiveX Resco
S309.PictureBox.1 ピクチャーボックス Big Red Toolbox S309PictureBox
S309.Timer.1 タイマーコントロール Big Red Toolbox S309Timer
S309.UserNotification.1 User Notificationダイアログボックス Big Red Toolbox S309UserNotification
TabStrip タブコントロール Microsoft ActiveX Tech Note 09
TextBox テキスト入力ボックス NSB標準 ハンドブック参照
Time 時間セレクター NSB標準 ハンドブック参照
TreeView ツリービュー Microsoft ActiveX Tech Note 23
TriButton 3つの状態を持つチェックボックス NSB組込み ハンドブック参照 (新)
vbceCreateProcess.vbceCreateProc 他のプログラムを実行 Third Party ActiveX CEGadgets
vbceNLS.vbceNLS 国際化 Third Party ActiveX CEGadgets
VbceSoftKeyboard.vbceSoftKeyboard ソフトキーボード Third Party ActiveX CEGadgets
vbceTaskbarControl.vbceTaskbarControl タスクバー Third Party ActiveX CEGadgets
ViaXML.ViaXMLClient Webサービス Third Party ActiveX ViaXML
VscrollBar 垂直スクロールバー NSB標準 ハンドブック参照 (新)
Winsock TCP/IP通信 Microsoft ActiveX Tech Note 05