[BUG] PC カードのタイプが Parallel の場合 I/O リソースが取得されない

文書翻訳 文書翻訳
文書番号: 313580 - 対象製品
この記事は、以前は次の ID で公開されていました: JP313580
すべて展開する | すべて折りたたむ

現象

ファンクション コード Parallel の PC カード用ドライバが、Windows XP では IRP_MN_START_DEVICE でリソースを受信しません。そのため、プラグ アンド プレイ (PNP) I/O 要求パケット (IRP) ハンドラが IRP_MN_START_DEVICE に失敗することが多くあります。その結果、デバイス マネージャによって、このデバイスに黄色の感嘆符とエラー コード 10 が付けられます。

ただし、ドライバが IRP_MN_START_DEVICE に成功した場合は、デバイスは正常に動作しているが関連リソースが見つからない、あるいは不完全であるとして、デバイス マネージャに表示されることがあります。

原因

Windows XP PCMCIA バス ドライバは、2 つの I/O ポート範囲しかない場合、または構成タプルが任意のメモリ範囲を要求する場合は、ファンクション ID タプル (21) コード 3 (Parallel) のデバイスに属するすべての構成タプルを無効と見なします。

たとえば、LPT1、LPT2、または LPT3 に共通の I/O ポート範囲を要求する PC カードがパラレル ポートに実装されている場合、このパラレル ポートは、すべての構成タプルが無効と見なされていることを検出します。そのため、システムはデバイスにリソースを割り当てません。ドライバは、IRP_MN_START_DEVICE のリソース リストが空であることを検出し、通常はこの IRP に失敗します。

解決方法

この問題を解決するには、Windows XP の最新の Service Pack を入手します。関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
322389 最新の Windows XP Service Pack を入手する方法


この問題を解決するには、デバイスの INF の LogConfig セクションに IOConfig ディレクティブを追加することで、無効と見なされる構成を上書きします。次に、その上書き後の構成にダミーの I/O ポート範囲を追加することで、2 つの I/O ポート範囲しか持たない場合の要件を満たすことができます。

以下のサンプル コードは、LPT1 範囲を要求するカードの LogConfig セクションを訂正して、ダミーの I/O ポート範囲 0778-077F を含めたものです。

[MyDeviceInstallSection]
...

[MyDeviceInstallSection.LogConfigOverride]
LogConfig=MyLogConfig
...

[MyLogConfig]
ConfigPriority=NORMAL
IOConfig=378-37F(3ff::)
IOConfig=778-77F(ffff::)
: この例では、パラレル ポートが最低 10 ビット デコーダを持つことを前提としています。ダミーの範囲の場合、16 ビット デコーダが設定されていましたが、デコーダが存在しません。

状況

マイクロソフトでは、この問題をこの資料の冒頭に記載したマイクロソフト製品の問題として認識しています。 この問題は、Windows XP Service Pack 1 で修正済みです。

詳細

次に示すのは、問題が発生する可能性があるタプルの一般的な例です。PC カードのファンクション ID タプル (21h) は 3 と評価されるので、デバイスは Parallel です。特に、ファンクション ID は次のとおりです。
21h TPL_CODE=CISTPL_FUNCID
02h TPL_LINK
03h TPLFID_FUNCTION
00h

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 313580 (最終更新日 2002-09-05) をもとに作成したものです。

この資料に含まれているサンプル コード/プログラムは英語版を前提に書かれたものをありのままに記述しており、日本語環境での動作は確認されておりません。

プロパティ

文書番号: 313580 - 最終更新日: 2002年10月26日 - リビジョン: 1.0
この資料は以下の製品について記述したものです。
  • Microsoft Windows XP Professional Edition
  • Microsoft Windows XP Home Edition
キーワード:?
kbbug kbfix kboswin2000fix kbwinxpsp1fix KB313580
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com