VisualStadio2005スマートデバイス開発について

このQ&Aのポイント
  • VisualStudio2005でスマートデバイス開発を行う方法を教えてください
  • WindowsCE向けのアプリケーションを作成するためには、VisualBasicを使用し、自作のActiveXコントロールをツールボックスに追加する必要があります
  • スマートデバイス以外のプロジェクトでは自作ActiveXが追加できるのに、スマートデバイスプロジェクトで追加できない理由がわかりません
回答を見る
  • ベストアンサー

VisualStadio2005スマートデバイス開発について

お世話になります VisualStadio2005のVisualBasicで スマートデバイス”WindowsCE”向けのアプリケーションを作っています 開発環境はWindowsXPです 初歩的な質問で申し訳ないのですが・・・ 自作のActiveXコントロールをツールボックスへ追加して 使用したいのですが、 ”アイテムの選択”で”COMコンポーネント”タブ内の自作OCXにチェックを入れても ツールボックスに自作ActiveXが追加されなくて困っています やり方が悪いのだと思いますが・・・ ちなみにスマートデバイス以外のプロジェクトだと上記操作で上手く追加されました ヘルプ等で調べたのですが、参考になるようなものが見当たらず・・・ 拙い説明で申し訳ありません よろしくお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

 スマートデバイス(Windows CE OS)ではパソコン(Windows NT OS)用のActive Xコンポーネントは使えないんだぜ。  スマートデバイス用のActive X コンポーネントは「MFC スマートデバイス ActiveX コントロール」で作るべし(それがVB.NETのスマートプロジェクトで使えるかどうかは知りません)。

niko06
質問者

お礼

ご回答ありがとうございます! 使えないんですか・・・! 「MFCスマートデバイスActiveXコントロール」 で作ってみて試してみます。 ...VB.NETで駄目だった場合は VisualC++で開発するのが一番良いのでしょうか...? 重ねての質問で申し訳ありません よろしくお願い致します

その他の回答 (1)

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.2

 言葉足らずだったようで申し訳ない。  筋道立てて解説していくと、まず、Windows CEにもActive Xはある。Pocket Outlookとかもあるしね。  パソコン用のActive Xコンポーネントが使えない理由はCPUが違うから。なのでCE用にコンパイルしたものなら動くのではないかという予想でした。そういう意味ではWindowsとWindows Mobileで同じEXEが動作する.Net Compact Frameworkというのは結構すごい技術やね。  で、Windows CEで動作するActive XコンポーネントはC++じゃないと作れないと思う。VB4(32bit)からVB6ではARMプロセッサ用のクロスコンパイラもVBランタイムもないので使えないだろう。  .Net Compact FramewokもおそらくInteropはあるだろう。Pocket Outlook用のアセンブリがどうやって実現されているかはわからないけど。  なので質問者の自作Active XがC++で書かれていて、CEのATLなどでコンパイルできるのであれば使えるのかも知れないというのがANo1で言いたかった事です。一切合切C++で書けという話ではありません。  ただ、そこまでしてActive Xにこだわるよりも同じ機能を持つコンポーネントをVB.NETで作り直す方が手っ取り早いんじゃないですかね。

niko06
質問者

お礼

お礼が大変大変遅くなってしまい本当に申し訳ありません (上システムの開発が別の人間に変更になったもので…;) CPUが違うということでActiveXが使用できないのですね 知りませんでした…; ご回答ありがとう御座います とてもとても助かりました!

関連するQ&A

  • VS2005でのコンポーネントの選択方法

    現在、VisualStudio2005でOCXを使用しようと思っているのですが、 コンポーネントでの追加方法が分りません。 VisualBasic6.0での設定方法は メニューバーより「プロジェクト」→「コンポーネント」で出現するサブウィンドウで選択 であるということは分るのですが・・・ 同様の設定をVisualStudio2005で行うにはどうすればよいのでしょうか? あまりにも初歩的な質問で申し訳ありませんが、ご回答をお願いします。

  • VB2008を使用して、VisualBasicの勉強をしています。

    VB2008を使用して、VisualBasicの勉強をしています。 MSFlexGridを使用したいのですが、 プロジェクト→参照の追加→COMで探しても見つかりません・・・。 いくつか参考サイトを見て、ActiveXを追加すれば良いことはわかったのですが、 方法がわかりません。 詳しい方、教えて頂けないでしょうか。 よろしくお願いします。

  • VB2005でActiveXを作成したいです

    はじめまして。 VB2005でActiveXのCOMを作成したいですが、 新規作成プロジェクトに ActiveXコンポーネントの項目がありません。 どのようにして作成するのでしょうか?

  • VisualBasicとswfファイル

    VisualBasicで作成するアプリケーション上でswfファイルを再生しようとしています。 それで、ネットで調べて 「参照追加」 → 「COM」  ShockWaveFlash を追加すればよいと分かり、追加しました。 すると、ソリューションエクスプローラーの参照設定には、 shockwaveFlashObjects が追加されましたが、ツールボックスには何も追加されません。 なので、Flashを再生することができません。 何かアドバイスをしてください。 ------使用しているもの----- Windows7 pro 64bit VisualBasic 2008 Express Flash (Basic) 8 Macromedia FlashPlayer 8 ------参照先情報------ C:\windws\SysWOW64\macromed\Flash\Flash32_11_2_202_160.ocx

  • ActiveXコントロールを作成してから登録の削除は?

    VBでActiveXコントロールを初めて作成したのですが、 間違えて同じ名前のActiveXコントロール作成してしまいました。 で、コンポーネントでのActiveXコントロール追加に同じ名前のコントロール が2登録されてしまいました。 この登録されたコントロールを2つとも削除したいのですが。 拡張子「*.ocx」のファイルを削除しても、 コンポーネントのコントロールに登録したActiveXコントロール名が残ったままです。 どうすれば、この登録を削除できるのでしょうか? よろしくお願いします。m(__)m 補足: 標準.EXEファイルなどでVBを立ち上げて、 ツールボックスの上で右クリック→コンポーネント→コントロールタブ で、表示されるコントロール名に同じコントロール名が登録されている状態です。 この登録名を両方とも削除したいのですが。

  • ocxの作り方(MFC)

    VC6でactiveX(ocx)をつくろうと思い、 プロジェクトを作ったのですが、 関数の作り方がわかりません。 Ctlファイルには手書きで追加するのでしょうか? 入門書にも乗ってないようで・・・ よくわかるサイトか何かご存じないでしょうか?

  • VB6のツールボックスへのコンポーネントの追加

    VB6(SP6)のツールボックスですが、コンポーネントを追加した後にVBを保存して閉じ、再度開くと、先に追加したコンポーネントが表示されません。(再度追加は可能です) OSは2000です。 <具体例> (1).コンポーネントの追加で Microsoft DataGrid Control 6.0(SP6)(OLEDB) をチェックして適用(OK)。 (2).DataGridをフォーム内に作成。 (3).プロジェクト、フォームを保存して閉じる。 (4).起動してみるとツールボックスには先程追加したMicrosoft DataGrid Control 6.0(SP6)(OLEDB)がなく、フォーム内にもDataGridが白抜きの状態になっています。 ツールボックスの保存機能はあるのでしょうか? 毎回ファイルを開く度にコンポーネントを追加しているため手間がかかっております。教えていただけないでしょうか。お願いします。

  • VISUAL STUDIOの英語メニュー

    VISUAL STUDIO6.0に関して英語のマニュアルを作ろうとしています。 メニューは日本語版と同じ構成ではないかと思うのですが、手元に英語版のVISUAL STUDIOがないため、英語のメニューがわかりません。 これを調べる方法または手元で確認できる方は回答おねがいできますでしょうか。 知りたい項目は以下の[・・・]の部分です。 たとえば、[プロジェクト]=>[project]、[コンポーネント]=>[component]といった感じです。 英訳ではありません。実際のメニューになんと書かれているかを教えて下さい。 1.VBについて。 (1) メインメニューの[プロジェクト]から[コンポーネント] (2)メインメニューの[プロジェクト]から[標準モジュールの追加] 2.VC++について。 (1)ActiveXコンテナプロジェクトの作成 AppWizardのステップ3で[その他どのサポートをしますか?]の[ActiveXコントロール] (2)メインメニューの [プロジェクト]-[プロジェクトへ追加]-[コンポーネントおよびコントロール] (3)メインメニューの[プロジェクト]から[プロジェクトへ追加][ファイル] 変な質問ですみませんが、困っています。 よろしくお願いします。

  • C#のコントロールdllをVBツールボックスに追加

    宜しくお願いします。 現在、C#で自作のカレンダーを開発し 自作カレンダーをVBのツールボックスへ登録し Formへデザイン(追加)しようとしております。 テストの段階では、テスト用のプロジェクトから dllを参照しnewすることで表示ができておりましたが ツールボックスから貼り付ける形で使用したいということで 調べて色々試しております。 ・ツールボックスのアイテムの追加で.NET Framework の一覧に表示がされない ・ツールボックスのアイテムの追加 > 参照ボタンでdllを指定すると  「ツールボックスに含めることのできるコンポーネントは何もありません」  のエラーが出る ・ネットで調べ、GACへの登録を試しましたがgacutil.exeがPCの中にない ・コマンドプロンプトでコマンドを実行( gacutil /i calendar.dll )し、  レジストリには登録されているが一覧には表示されない という現状です。 ・dllのプロジェクト設定でCOM相互運用機能の登録にチェック。効果なし ・dllのプロジェクト設定でアセンブリをコム参照可能にするにチェック。効果なし ・追加する側、AutoToolboxPopulate を [true]に設定。効果なし という現状です。 そこで質問なんですが ・dll側で必要な設定やコード等があるんでしょうか? ・追加する側で必要な操作等はありますか? ご教授宜しくお願い致します。

  • COMコンポーネントファイルが参照できない。

    現在VisualBasic2010expressを使っています。 オーディオの録音用プログラムを作りたいと思い とあるホームページからwave入出力用のCOMコンポーネントファイル(.ocx)をダウンロードしました。 E:ドライブの「system32」の中に入れVBから「ツール→アイテムの選択→COMコンポーネント→参照」と操作しsystem32に入ってる目的のファイルを探したんですがどこにも見当たりません。 VBではなく普通に「sysytem32」を開いた場合は目的のファイルはきちんと存在します。 またVB上でも「system32」上ではなく「system」のフォルダに置いた場合は参照できます。 なぜ「system32」上だと参照できないんでしょうか? 読み取り専用、隠れファイル等もチェックを外してみたのですが変わりませんでした。 VBでファイル名を示し実行した場合は「そのファイルは存在しません」となります 使用しているOSはWindows8です。8が原因何でしょうか? 初歩的な質問で申し訳ありません。

専門家に質問してみよう