MSのページに記載されている「SetupDi を使用してハードウェア機器を列挙する方法」を実行したいのですが、コマンドプロンプトが表示されると同時に「PSXDLL.dllが見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションをインストールし直すとこの問題は解決される場合があります。」とエラー出て実行できません。dllはDDKからプロジェクトに入れており、PSXDLL.dllもプロジェクトに入れております。
環境はXPsp2、VC++6です。
宜しくお願いします。
DLLをプロジェクトに入れるって、どういう意味ですか?
DLLにPATHは通っていますか?
ご返答ありがとうございます。
勘違いしていました。
PSXDLL.dllではなくPSXDLL.libをプロジェクトに入れていました。。
PSXDLL.dllがあればそこにpathを通せばいけるということですよね。
しかしPSXDLL.dllを探しましたが発見することができませんでした。。
w2kにPSXDLL.dllがありましたので
それを利用しましたが、今度は
「アプリケーションを正しく初期化できませんでした」と
エラーが出るようになりました。
もっと基本的なところで間違えているのでしょうか。。
これまでの経過は以下の通りです。
まずMSのサンプルにDDKが必要と記載されていましたので
winXP用のDDKを入手しインストールしました。
次にVCでコンソールアプリを作成しサンプルコードを
コピペしました。
実行の際に以下の外部シンボルの未解決エラー
「外部シンボル"_imp_SetupDiDestroyDeviceInfoList@4"は未解決です
外部シンボル"_imp_SetupDiGetDeviceRegistryPropertyA@28"は未解決です
外部シンボル"_imp_SetupDiEnumDeviceInfo@12"は未解決です
外部シンボル"_imp_SetupDiGetClassDevs@16"は未解決です
外部参照4が未解決です」
が出ましたので、WINDDK\lib\wxp\i386にありましたlibファイルを全て
プロジェクトに追加しました。
そうしたところ先程のPSXDLLのエラーが表示されるようになりました。
すいません。
setupapi.libだけ追加したところ動きました。
お騒がせ致しました。
もっと基本勉強します。。
# ゴミです
「昨晩子供が熱出して薬箱にあるもんみんな飲ませたら余計にひどくなりました」
みたいな orz
PSXDLL ってのは POSIX サブシステムのファイルですね。
Windows Services for UNIX をインストールしないと存在しません。