現在オフラインです。再接続するためにインターネットの接続を待っています

[HOWTO] Windows XP で Wiadebug.log のログを有効にする方法

Windows XP のサポートは終了しました

マイクロソフトでは、2014 年 4 月 8 日に Windows XP のサポートを終了しました。この変更は、ソフトウェアの更新プログラムおよびセキュリティ オプションに影響しています。 この変更の意味および保護された状態を維持する方法について説明します。

この記事は、以前は次の ID で公開されていました: JP307001
概要
デフォルトでは、WIA (Windows Image Acquisition) サービスによって、Windows_folder フォルダ内の Wiadebug.log ファイルにエラー ログが記録されます。この資料では、Wiadebug.log ファイルのログを有効にする方法について説明します。

先頭に戻る

Wiadebug.log ファイルのログを有効にする

WIA サービスによってこのファイルに記録される情報は、ドライバ開発にきわめて有用です。ログ レベルは、レジストリ内のエントリによって管理されます。WIA の場合、このキーは以下のレジストリ キーにあります。モジュール名はバイナリ モジュールの名前です。
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\StillImage\Debug\モジュール名\DebugFlags
WIA サービス用のバイナリ モジュールは Wiaservc.dll です。

DebugFlags の値によって、ログ レベルが管理されます。以下の一覧に、3 種類の設定を示します。
  • 0x00000001 : エラー メッセージを表示します。
  • 0x00000002 : 警告メッセージを表示します。
  • 0x00000004 : トレース メッセージを表示します。
DebugFlags の値はフラグ値です。つまり、異なる設定が同時に読み込まれます。エラー、警告、およびトレースのログを同時に有効にするには、DebugFlags を 0x0000007 に設定します。

DebugFlags の値を変更する場合は、WIA サービス (stisvc) を停止した後、サービスを再開して変更を有効にします。

Still Image サービスを停止するには、コマンド プロンプトを開き、以下のコマンドを実行します。
net stop stisvc
Still Image サービスを開始するには、コマンド プロンプトを開き、以下のコマンドを実行します。
net start stisvc
: 必要以上のログを有効にすると、パフォーマンスが著しく低下する可能性があります。特定の問題を解決する場合にのみ、ログ レベルを上げるようにします。問題を修正した後、ログ レベルを元のレベルに戻します。

先頭に戻る

トラブルシューティング

以下のシナリオでは、一般的な問題を示し、Wiadebug.log ファイルの情報を使用して問題を解決する方法について説明します。

シナリオ : 開発中のスキャナ ドライバをテストするためのプログラムを作成しました。テスト時に、スキャナのドット/インチ (dpi) 設定を 1200 に設定しようとしましたが、この操作でエラーが発生しました。

以下のデータが Wiadebug.log に記録されています。
wiasGetChangedValueLong, validate prop 6147 failed hr: 0x80070057
wiasUpdateScanRect, CheckXResAndUpdate failed (0x80070057)
CDrvWrap::WIA_drvValidateItemProperties, Error calling driver:
drvValidateItemProperties with hr = 0x80070057
: この動作は、プログラムが無効な値を書き込んだ場合に一般的に発生します。

上記のログ項目は、ドライバからプログラムが無効な値を書き込んだことが報告されたことを示しています。この情報からは、正確な問題を特定できません。エラーと警告を報告するように WIA ログ レベルを上げると、以下の情報が Wiadebug.log に記録されます。
wiasValidateItemProperties, invalid LIST value for :
propID) Horizontal Resolution, value = 1200
Valid values are:
  • 75
  • 100
  • 150
  • 200
  • 300
  • 600
wiasGetChangedValueLong, validate prop 6147 failed hr: 0x80070057
wiasUpdateScanRect, CheckXResAndUpdate failed (0x80070057)
CDrvWrap::WIA_drvValidateItemProperties, Error calling driver:
drvValidateItemProperties with hr = 0x80070057
: この動作は、プログラムが無効な値を書き込んだ場合に一般的に発生します。

この出力結果は、Horizontal Resolution プロパティがエラーの原因となっていることを示しています。プログラムが解像度を 1200 に設定しようとしましたが、対応する解像度の一覧に 1200 が含まれていません。そのため、WIA サービスの確認ヘルパー (wiasValidateItemProperties) がこの値に設定する要求を拒否しました。

これによって問題を特定でき、ドライバまたはプログラムを修正するかどうかを決定できます。スキャナの仕様で 100 から 1400 dpi までのすべての解像度がサポートされている場合、ドライバは 1200 dpi の要求を処理できます。スキャナがこの設定をサポートしていない場合、Horizontal Resolution をこのプロパティに対して無効な値に設定しないようにプログラムを変更します。この場合、プログラムがこの値にプロパティを設定する前に、値が有効かどうかを確認する必要があります。

先頭に戻る


関連情報
この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 307001 (最終更新日 2002-03-14) を基に作成したものです。

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

文書番号:307001 - 最終更新日: 11/17/2003 05:35:00 - リビジョン: 1.0

  • Microsoft Windows XP Professional Edition
  • kbhowto kbhowtomaster kbtool jptrf KB307001
フィードバック