質問: HidSmbus_GetNumDevices(numDevices, vid, pid) ←エラー発生 ``` ### 試したこと 過去ログから調べて調査1、調査2、調査3、調査4 と色々と調べてみましたが 解決に至りませんでした。 DLLはメーカ製の過去品のため更新されていません 調査1 DLLファイルが正しく配置されアクセス可能か →どれも変わらずNG C:\Windows\System32 及びエクセルファイルのあるフォルダーに aaaa.dll を配置し ファイル名だけ または フルパス指定して読み出しをトライ。 aaaa.dll ファイルのプロパティ/セキュリティを確認し どのユーザからも フルコントロール扱いにした 調査2 環境Aの時、「互換モード」( .xls)となっていたので新規に2010で 作成し( .xlsm)してみた →変わらずにNG VBA作成は互換モードで起動したものからエクスポートして新規の方に インポートした 調査3 参照設定について 環境Aと環境Bでは参照できないDLLファイルでした その他の参照設定は最小の5つだけで同じでした。 → 環境による差はなかった もちろんエクセルのバージョンによる番号の違いはあります 調査4 セキュリティ関連の確認(環境A) すべてのマクロを有効にする(選択済) VBAプロジェクトオブジェクトモデルへのアクセスを信頼する(チェック済) ### 補足情報(言語/FW/ツール等のバージョンなど) 環境A エクセル2010 バージョン: 14.0.7184.5000 32ビット OS win7 64ビット 環境B エクセル2003 SP3 バージョン: 11.8169.8172 OS XP SP3 32ビット
回答: > > C:\Windows\System32 及びエクセルファイルのあるフォルダーに aaaa.dll を配置し > > > System32 は64ビットプログラム用のフォルダーです。 32ビットは、 C:\Windows\SysWOW64 に置くことになってます。 WOW64 は、**W**indows 32-bit **O**n **W**indows **64**-bit のことらしいです。 WOW64 - Wikipedia