私のバージョンのOffice 2007を使用して32ビットDLLをロードできないことがわかりました。私はVista 64ビットを使用していますが、Officeも64ビットモード。 Excelを32ビットモードで起動することが可能です または VBを使用してDLLを宣言して32ビットDLLをロードする方法はありますか?Excel 2007(Vista 64ビット版)を使用して32ビットDLLをロードする
私が使っているDLLのソースコードがないので、64ビットモードのものを単純に再コンパイルすることはできません。だから、自分の環境は64ビットであっても、Excelを32ビットモードで実行させたり、DLLを32ビットDLLとして宣言したりするオプションがあると思います。
実際にDLLが存在していても、「DLLが見つかりません」というエラーが表示されます。
以下はサンプルの宣言です。このステートメントには32ビットの属性がありますか?
プライベート宣言機能ESQMainのLib "ESQuotes2.dll" エイリアス "_ESQMain 12 @" _ (ロングとしてByVal FUNC、ByValのTICKER_SYMBOL文字列、文字列としてByVal結果として)整数として
この質問は悪いです。私はオフィスの64ビットバージョンがないことを発見したので、私の本当の問題はExcelが単にロードされない、または私がそれを置く場所に関係なく私のDLLを見つけることができないということです。 –
答えは、Excel 2007がDLLの別の場所を探していることが判明しました。私はsysinternalsプロセスモニタをダウンロードすることでこれを発見し、ワークブックと同じフォルダ内では見えず、windows \ system32でも検索しないことに気づいた。 –