WindowsXP embeddedのコンポーネント追加時のエラーについて

このQ&Aのポイント
  • WindowsXP embeddedの開発において、ドライバの.infファイルをComponent Designerにimportするとエラーが発生します。空のフォルダが作成されるだけでコンポーネントが追加されません。ヘルプには、適当なセクションを.infファイルに加えるように書かれていますが、具体的な方法がわかりません。
  • また、同じConcordance IDを持つコンポーネントが複数作成されることや、レジストリの登録に失敗していることもあります。レジストリキーの追加方法や、同じ名前のコンポーネントについての対応方法がわかりません。どうすればこれらのエラーを解決できるでしょうか?
  • WindowsXP embeddedの開発において、Component Designerでのドライバのインポート時に以下のエラーが発生します。 1. [セクション名] is missing. 2. More than one component has the same Concordance ID. 3. [セクション名] is Empty. 4. An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\SOFTWARE\xxx\Display Driver. 5. [セクション名]: cannot handle key "UninstallFiles". これらのエラーにどのように対処すればよいでしょうか?
回答を見る
  • ベストアンサー

WindowsXP embeddedの開発方法その3

なんとかドライバを見つけてinfファイルをComponent Designerにimportしましたが、エラーの嵐です。 とりあえず、ここでは2パターンを質問します。 <パターン1> Warning:D:\xxx\(中略)\xxx.inf: [セクション名] is missing. Info:Completed processing file [Import succeeded] : D:\xxx\(中略)\xxx.inf 最後に成功(succeeded)といっておきながら、何もコンポーネントが追加されませんでした。(空のフォルダだけできる)warningをヘルプで調べると適当なセクションを.infファイルに加えてくださいと書いてありますが、意味不明です。 <パターン2> Info:More than one component has the same Concordance ID [xxxxx]. Warning:C:\xxx\xxx.INF: [セクション名] is Empty. +++ CRITICAL ERROR +++:An error occurred when trying to add a registry resource HKEY_LOCAL_MACHINE\SOFTWARE\xxx(中略)\Display Driver\. Warning:[セクション名]: cannot handle key "UninstallFiles". (中略)同じような内容がいくつか続きます Info:Completed processing file [Import succeeded] : C:\xxx\xxx.INF こちらも一見うまくいったように見えます。 しかしレジストリの登録にいくつか失敗しているような感じです。ヘルプを見るとレジストリキーを加えるとありますが、これも何をどのようにしていいかわかりません。また、解せないのが同じ名前のコンポーネント複数ができてしまうことです。(1行目のInfo:More than~のところがそれを伝えている?)どう対応したらよいものでしょうか?

  • embe
  • お礼率94% (18/19)

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

  • ベストアンサー
  • catby
  • ベストアンサー率65% (50/76)
回答No.1

INFファイルのインポートはAutomaticにて行っていますか? Automaticで行ってINFファイルをインポートしてコンポーネントが作成されなかった場合、そのINFファイルの中にはデバイスの記述が無かったのだと思います。 またINFファイルをインポートした際に重要なのは、INFファイルをどれだけトレース出来たかではなく、"Resources"の中に自分が使用しようとしたデバイスのPnP情報と、サービスが作成されているかです。 INFファイルの中には、デバッグのために残っているセクション等使用していないセクションが沢山含まれています。 また、Windowsにデバイスドライバをインストールする事は可能だけど、エラーのあるINFファイルは沢山あります。これらがワーニングとして検出されているのです。 Importは、Windowsのインストーラがデバイスを発見した時に行う処理と基本的には同じです。 ですので、これらのワーニングが出ている部分は、普通のWindowsXPにインストールした場合も正常に動作しない部分であることがほとんどですので、あまり気にしなくて大丈夫です。 動かしてみて正しく動作していないようでしたら調査してみてください。 レジストリが必要なものに比べて不足していると思った場合には、普通のWindowsXPにドライバをインストールした結果を「InCtrl5」にて抽出して、それをコンポーネントファイルに追加してみてください。 また、デュアルディスプレイ対応のディスプレイドライバは個性が強いので、ファイルや、レジストリの設定等に問題が無くても解像度の変更が出来ない事もあります。 この場合も「InCtrl5」にてトレースする必要があります。その結果、レジストリや、INFファイルを修正する事になると思います。 > 同じ名前のコンポーネント複数ができてしまう これは、INFファイル内に同一の名前で違うデバイスが記述してあるために起こっています。 この場合は、それぞれ手動にて適切な名前に変更しましょう。 これらの作業を行う場合には、INFファイルの内容がある程度読める事が前提となります。 このサイトが参考になるかと思いますので、見てみてください。 [What is an INF?] http://sekida.dynsite.net/~yuuki/inf/index.html

参考URL:
http://sekida.dynsite.net/~yuuki/inf/index.html
embe
質問者

お礼

>そのINFファイルの中にはデバイスの記述が無かった そうなんですか。INFファイルの中にはいろいろ書いてあるようでしたが。少しINFファイルの研究をしてみます。 レジストリはやっかいです。おっしゃるとおり、ディスプレイドライバで問題が起きています。ちなみにATIのMOBILITY RADEON 9000です。Target Designerでコンポーネントの解像度を変更しても反映されません。「InCtrl5」についても使い方がまだよくわからないのでこちらも研究してみます。

embe
質問者

補足

iniファイルを見てみましたが、どこが悪いのかわかりませんでした。 大変厚かましいお願いで恐縮ですが、もし時間が許すようでしたらちょっと見ていただけないでしょうか? ここ(コンポーネントが作られない) http://support.jp.dell.com/jp/jp/download/document.asp?dn=301665 ここ(レジストリ登録失敗) http://support.jp.dell.com/jp/jp/download/document.asp?dn=302415 です。

その他の回答 (3)

  • catby
  • ベストアンサー率65% (50/76)
回答No.4

薄くなっているのは、既存のコンポーネントと競合しているためです。 ご自身が使用しないデバイスコンポーネントならば、削除しても問題ありません。 No.1にも書きましたが、INFファイルのImportで重要なのは、"Resources"の中に自分が使用しようとしたデバイスのPnP情報と、サービスが作成されているかです。 Importで作成されたコンポーネントで、ここが全く同じものというのは無いはずです。 同一名のコンポーネントが複数でき、"Resources"の"PnP Device ID"以外同じであれば、"PnP Device ID"を1つのコンポーネントにまとめても良いとは思います。 それから、 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1256129 に同様の質問を挙げています。 これは、マルチポストにあたり、本サイトの禁止事項に抵触します。

embe
質問者

お礼

INFファイルには、ある程度互換性のあるドライバがまとめて入っているので、極端な話、デバイスが特定できていれば、それ専用のコンポーネント以外はすべて削除しても一向に差し支えないということでしょうか。(そのデバイスが実際どのコンポーネントを必要としているのか特定が難しいですが。) >マルチポスト 申し訳ありません、私の中では若干、質問の内容とニュアンスが微妙に違っていたもので。こちらでまとめてご回答いただきありがとうございます。削除可能(24時間後)になったら削除します。

  • catby
  • ベストアンサー率65% (50/76)
回答No.3

NICの方を試しにComponent Designerにかけてみました。 確かに、INFファイルにバグがあったようです。 R54656\Drivers\WinXP\v5.30\b57xp32.inf の21行目 %BRCM% = Broadcom, NTx86.5.1 となっていますが、正しくは、 %BRCM% = Broadcom.NTx86.5.1 です。 変更してもう一度Importしてみてください。 ワーニングが何箇所かで出ていましたが、特に問題無いでしょう。 グラフィックに関しては、実際に動かしてみないと分からないので何とも・・・

embe
質問者

お礼

できました。こんなバグ入りファイルが出回っているとは。 ワーニング"cannot handle key"というのはグラフィックドライバのワーニングと同じです。このエラーはあまり気にしなくてよいのでしょうか? 長くなって申し訳ありませんが、ついでにもうひとつ。 importが終わった後のコンポーネントのアイコンが薄くなって、プロパティも変更できないものが混じりますよね?あれはなぜでしょうか?このワーニングと関係があるのでしょうか?

  • catby
  • ベストアンサー率65% (50/76)
回答No.2

「InCtrl5」の簡単な使い方としては、 1.InCtrl5起動し、[Go]ボタンを押す 2.インストーラにてドライバをインストールしたり、  Wiindowsの設定を行う。 3.InCtrl5起動し、[Install Complete]ボタンを押す これで、2の処理にて行った変更を抽出可能です。 > iniファイルを見てみましたが、どこが悪いのかわかりませんでした。 INIファイルではドライバはインストールできませんよ! INIファイルは、インストールプログラムの設定情報等が格納されているだけで、ドライバとは一切関係ありません。 ドライバのインストールに最低限必要なのは、INFファイル、SYSファイル、(CATファイル)くらいです。 NICに関しては、これらが揃っているのでドライバファイルとして特に問題がるとは思えません。 まずは、色々なドライバのINFファイルを見て、ドライバのインストールファイルとはどういうものなのか勉強してください。 また、INFファイルだけでインストールできるかどうか判断する方法として、 抽出したINFファイルと、INFファイルが必要としているファイルをまとめて、普通のWindowsXPにインストールしてください。 これで、デバイスが検出できなかった場合、それはそのデバイスドライバの設定ファイルでは無かったという事です。 また、正常にドライバが動かなかった場合は、インストーラにてドライバを動かすのに必要な処理をしているという事です。 INFファイルにてドライバをインストールした時と、インストーラにてドライバをインストールした時の違いを「InCtrl5」にてチェックしてみてください。

embe
質問者

お礼

ご回答ありがとうございます。 「InCtrl5」の使い方は、Install programのところにinfファイルを指定して「GO!」ボタンを押していました。 教えてもらった方法で試してみます。 >INIファイルではドライバはインストールできませんよ! ごめんなさい。私のタイプミスです。INFのつもりで書いたのですが、この「教えて!goo」では訂正とか追記ができなくて。 結局、うまくいかない時は「InCtrl5」を使って、普通にドライバをインストールするときの処理をトレースし、それをそっくり再現させるように、うまく導くのが基本ということですね。(それが難しいんでしょうけど。)

関連するQ&A

  • WindowsXP embeddedの開発方法その4」

    Target Designerに自前で用意したコンポーネントをimportし、必須と思われる(一例ですが)以下のコンポーネントも追加したとします。 ・Hardware/Devices/Keyboards/Japanese PS/2(106/109Key) ・Software/System/System Service/Base/NT Loader ・Software/System/System Service/Base/FAT ・Software/System/System Service/Base/NTFS ・Software/System/User Interface/Shell/Windows Shell/User Interface Core ・Software/System/User Interface/Shell/Windows XP Explorer User Interface ・Software/System/International/Infrastructure/Japanese Language Support ・Software/System/International/Infrastructure/Microsoft Japanese IME Core ・Software/System/International/Regional and Language Option 次に、必要ないものを削ったり、あるいは足りないものをさらに補ったり、設定を変えたりしていくわけですが、最終目的は「ユーザーにWindowsだとわからせないようなOS」を実現したいのです。 例えば・・・ ・ログインダイアログを出さない ・スタートメニュー、タスクバーを出さない ・すべてのWindowsロゴ、Microsoftロゴを表示しない ・Ctrl+Alt+Deleteを無効にする などなど、他にもあると思います。 しかし、どこから手をつけてよいかわかりません。 スタートメニューを出さないようには何とかできました。それ以外がどうもうまくいきません。

  • WindowsXP embeddedの開発方法その2

    以前、同名のタイトルで質問した者です。 質問内容が多いので分けて質問させていただきます。 (同じ悩みを抱えている方が検索しやすいように) TAP.exeで取得したハードウェア構成情報(device.pmqファイル)をTarget Designerにimportすると以下のようなWarningが発生します。 Warning:Could not find a driver for Microsoft System Management BIOS Driver (root\mssmbios). Warning:Could not find a driver for OpenManage Client Instrumentation device driver (root\omci). Warning:Could not find a driver for 汎用ボリューム (STORAGE\Volume). ドライバが自動で見つからないためだとは思いますが、BIOSドライバとかOpenManage...とか汎用ボリュームとかはなんのことかわかりません。(他のデバイスドライバもWarningが出ていますが、ビデオやオーディオ、ネットワークドライバなどですので、これはわかるので、ここでは省略しています。)この3つだけがわかりません。無視してよいのでしょうか?

  • WindowsXP embeddedの開発方法

    仕事でWindowsXP embedded(以下XPe)を使った開発をまかされました。 しかし、ネットでも書籍でもほとんど扱っていません。 あったとしても英語です。 手順などはわかるのですが、ドライバ追加しようとするとエラーはでるし、どれを削っていいのか、何を追加するのか何がなんだかわけわかりません。 藁をもつかむ思いです。

  • Outlook で pst をインポートできない

    新しく購入した Windows 7 の PC の Outlook 2007に 今まで使用していた Windos XP PCで使っていた Outlook 2007 の個人用フォルダデータ(*.pst)を ファイル > インポートとエクスポート > 他のプログラムまたはファイルからインポート > 個人用フォルダファイル(.pst) の手順でクリックして、インポートしたい XXX.pst ファイルを指定しているのですが 「ファイル XXX.pst は個人用フォルダファイルではありません」 というエラーメッセージが出てインポートが出来ません。 読み取り専用でもないし、いろいろ調べたのですが、何が問題なのかがわからず困っています。 ただ、すでに Outlook.pst というファイルが存在しており、そのファイルがあるがために 私が新たにインポートしたい XXX.pst ファイルが認識されないのでしょうか? だとしたら、どうやったら以前の XXX.pst ファイルをインポートできるのでしょうか? ご存知のかた、どうぞ教えてくださいますようお願いします。

  • windowsコンポーネントの追加と削除ができません

    OS:Windows XP Pro SP3 コントロールパネルからWindowsコンポーネントの追加と削除をしようとすると、「情報ファイル fxsocm.infを開けませんでした。システム管理者に問い合わせてください。行0のエラーコードは0×2です。」というエラーが出てその先に進めません。WindowsのCDからもコンポーネントの追加を試みましたが、同じようなエラーが出ました。どうもSP3にアップデートすると同様のトラブルが出ているようなのですが、解決策を探せませんでした。よろしくお願いします。

  • JSPでインポート

    WEB-INF \ classes \ abc \ def \ghi.java jsp \ hoge.jsp WEB-INFとjspは同じ場所にあります。 jspファイルにimportを記述して上のabc.def.*のパッケージをインポートしたいのですが、 <% page import = "abc.def.*" %> と入れても、「パッケージがありません」というエラーになってしまいました。 (eclipseの左側の×しるし) おそらくパッケージがどこから始まっているのか、という情報(どこにあるのか??) を与えてやら無いといけないとは思うのですが、それがどこなのか良くわかりません。 実はもともともwarアーカイブがあり、それを一気に配備すればエラーは出ません。 どのように構築して行ったのかを勉強しようとしたところ、このような壁にあたってしまったのです。 どこにどう書けばよいかを教えてください。

    • ベストアンサー
    • Java
  • JavaBeans が使用出来ない

    Tomcat と Apache を連携させています。 参考書どおりに、jsp:useBeans タグを利用したJSPファイルを書き、クラスファイルを書きましたが、 //////////////////////////// /usr/local/tomcat/work/Standalone/localhost/test/jsp/sample_jsp.java:7'.'がありません。 import samplebeans; エラー1 //////////////////////////// と表示されてしまいます。 サーブレットに変換されたファイルを見てみると、 import samplebeans; となっており、そこが原因みたいです。 WEB-INF/classes にクラスファイルを置いてあるのですが、上手くいきません。 サーブレットに変換されたあとに、コンテナが WEB-INF/classes ファイルをうまくimport できるように CLASSPATH を張ってくれていればできると思うのですが、どうすればいいのでしょうか? 簡単な設定ミスをしているのかもしれませんが、 ご教授してもらえればうれしいです。 どうか宜しくお願い致します。

    • ベストアンサー
    • Java
  • デジカメの写真がWクリックしても大きく表示されなくなった。

    半年くらいまえからいきなりWクリックしても大きく表示されなくなりました。インターネットでしらべたらjpgの拡張子をbmpに変更したらできると書いてあったのでしたのですが確かにできたのですが、沢山お写真があるので一変にかえたいのです。 エラーメッセージは2つです。 エラー1 kodak イメージ ビューアの警告 kodak イメージ ビューアでこのファイル形式を表示すると、セキュリティ上の問題が生じる可能性があります。詳細については、つぎのサイトを参照してください。 http://support.microsoft.com/kb/923810 kodak イメージ ビューアでこのファイルを表示しますか?と表示されアドレスバー をクリックしたのですが、Windowsコンポーネントの追加と削除を開いたときにKodak Image Viewer が一覧に表示されなくてそのあとの操作がよくわかりません。いことがあります。Kodak Image Viewer をアンインストールするには、[プログラムの追加と削除] にイメージング コンポーネントを表示するように .inf ファイルを編集することが必要な場合があります。これを行うには、以下の手順を実行します。 メモ帳などのテキスト エディタを使用して、以下のファイルを開きます。(質問 これはどこからどのようにひらいたらいいのでしょうか?) %Systemroot%\Inf\Sysoc.inf Sysoc.inf file で、次のテキストを検索します。 (検索ーファイルとフォルダから検索するのでしょうか?) imagevue=ockodak.dll,ImagingOcEntry,imagevue.inf,hide,7 テキストから "hide" を削除します。たとえば、手順 2. のテキストを編集すると、次のようになります。 imagevue=ockodak.dll,ImagingOcEntry,imagevue.inf,,7 Sysoc.inf ファイルを保存します。 コントロール パネルで、[プログラムの追加と削除] をダブルクリックし、[Windows コンポーネントの追加と削除] をクリックします。 イメージング コンポーネントのチェック ボックスをオフにし、[次へ] をクリックします。残りの手順を実行して、コンポーネントをアンインストールします。 Kodak Image Viewer ファイルが削除されたことを確認するには、次のファイルを検索します。見つかった場合には、そのファイルを削除します。 %Systemroot%t\System32\Oieng400.dll %ProgramFiles%\Windows NT\Accessories\Imagevue\Kodakimg.exe %ProgramFiles%\Windows NT\Accessories\Imagevue\Kodakprv.exe -------------------------------------------------------------------------------- エラー2 アプリケーションエラー エラーが発生したため、kodakPrv.exeを終了します。プログラムをもう一度開始する必要があります。エラーログを作成しています。と表示されます。 kodakというものはいれた覚えもありません。 どうしたらいいか教えてください

  • windows コンポーネントの追加と削除が開けません

    windows xpのwindowsコンポーネントの追加と削除をクリックすると 「情報ファイル fp40ext.inf が開けませんでした。 システム管理者に問い合わせてください。行2088999592 エラーコードは0x2 です。 というメッセージが出てきます。 解決方法をお教えいただけませんでしょうか?

  • アップロードされた画像をGDで処理しようとすると

    JPEG画像をファイルアップロードし、そのJPEG画像を元に画像編集を行おうとすると、 Warning: imagecreatefromjpeg(): 'XXX.jpg' is not a valid JPEG file in xxxx.php on line XXX というエラーがでてしまいます。 $img_old = imagecreatefromjpeg ( $imgName ); エラーメッセージからすると、ソースのこの部分でエラーが出ているようです。 しかし、わからないのが、画像によってエラーが発生するものと発生しないものがあります。 どなたか情報お持ちの方よろしくお願いいたします。

    • ベストアンサー
    • PHP