アプリ版:「スタンプのみでお礼する」機能のリリースについて

なんとかドライバを見つけて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~のところがそれを伝えている?)どう対応したらよいものでしょうか?

A 回答 (4件)

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

この回答への補足

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

補足日時:2005/03/04 16:55
    • good
    • 0
この回答へのお礼

>そのINFファイルの中にはデバイスの記述が無かった
そうなんですか。INFファイルの中にはいろいろ書いてあるようでしたが。少しINFファイルの研究をしてみます。

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

お礼日時:2005/03/04 13:25

薄くなっているのは、既存のコンポーネントと競合しているためです。


ご自身が使用しないデバイスコンポーネントならば、削除しても問題ありません。

No.1にも書きましたが、INFファイルのImportで重要なのは、"Resources"の中に自分が使用しようとしたデバイスのPnP情報と、サービスが作成されているかです。
Importで作成されたコンポーネントで、ここが全く同じものというのは無いはずです。
同一名のコンポーネントが複数でき、"Resources"の"PnP Device ID"以外同じであれば、"PnP Device ID"を1つのコンポーネントにまとめても良いとは思います。


それから、
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1256129
に同様の質問を挙げています。
これは、マルチポストにあたり、本サイトの禁止事項に抵触します。
    • good
    • 0
この回答へのお礼

INFファイルには、ある程度互換性のあるドライバがまとめて入っているので、極端な話、デバイスが特定できていれば、それ専用のコンポーネント以外はすべて削除しても一向に差し支えないということでしょうか。(そのデバイスが実際どのコンポーネントを必要としているのか特定が難しいですが。)

>マルチポスト
申し訳ありません、私の中では若干、質問の内容とニュアンスが微妙に違っていたもので。こちらでまとめてご回答いただきありがとうございます。削除可能(24時間後)になったら削除します。

お礼日時:2005/03/08 10:57

NICの方を試しにComponent Designerにかけてみました。


確かに、INFファイルにバグがあったようです。

R54656\Drivers\WinXP\v5.30\b57xp32.inf
の21行目
%BRCM% = Broadcom, NTx86.5.1
となっていますが、正しくは、
%BRCM% = Broadcom.NTx86.5.1
です。
変更してもう一度Importしてみてください。
ワーニングが何箇所かで出ていましたが、特に問題無いでしょう。

グラフィックに関しては、実際に動かしてみないと分からないので何とも・・・
    • good
    • 0
この回答へのお礼

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

お礼日時:2005/03/07 15:21

「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」にてチェックしてみてください。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
「InCtrl5」の使い方は、Install programのところにinfファイルを指定して「GO!」ボタンを押していました。
教えてもらった方法で試してみます。

>INIファイルではドライバはインストールできませんよ!
ごめんなさい。私のタイプミスです。INFのつもりで書いたのですが、この「教えて!goo」では訂正とか追記ができなくて。

結局、うまくいかない時は「InCtrl5」を使って、普通にドライバをインストールするときの処理をトレースし、それをそっくり再現させるように、うまく導くのが基本ということですね。(それが難しいんでしょうけど。)

お礼日時:2005/03/07 11:30

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!