私は熟練した Windows プログラマーではありませんが、長年にわたって 32 ビット Windows XP / Excel 用の XLL アドインを作成し、維持してきました。Windows 7/64 ビット バージョンを作成したいのですが、問題が発生しています。Generic.xll のサンプルを動作させることさえできません。
これが私が行ったことの最も単純なバージョンです-申し訳ありませんが、これは長くて衒学的です。
Visual Studio 2010 Professional がインストールされている Windows XP/32 マシンで:
Microsoft Excel 2013 SDK をダウンロードしてインストールしました。
スタート メニュー - 「Visual Studio x64 Cross Tools コマンド プロンプトを開く (2010)」
タイプを設定=リリース
SET PLATFORM=x64 // とにかくこれはあらかじめ設定されていたと思います
cd C:\2013 Office System Developer Resources\Excel2013XLLSDK\SAMPLES\FRAMEWRK
nmake // エラーなし
cd C:\2013 Office System Developer Resources\Excel2013XLLSDK\SAMPLES\GENERIC
nmake // エラーなし
結果の C:\2013 Office System Developer Resources\Excel2013XLLSDK\SAMPLES\GENERIC\x64\RELEASE\GENERIC.xll を、Windows 7/64 コンピューターからアクセス可能なネットワーク フォルダーにコピーします。
Windows 7/64 コンピュータの場合:
エクセル2013を起動
ファイル - オプション - アドイン - Excel アドインの管理 - 参照、Generic.xll を含むネットワーク フォルダーに移動し、それをクリックします。
Excel が Generic.xll を標準フォルダーにコピーできるようにします。メッセージなしでサイレントに読み込まれます (Generic.xll が読み込まれたというメッセージは含まれません)。
Generic.xll の機能は表示されません。
Excel を閉じて再度開く - 再度開くと、「'GENERIC.xll' のファイル形式と拡張子が一致しません。ファイルが壊れているか安全でない可能性があります...」というメッセージ ボックスが表示されます (「はい」と答えると、テキスト ファイルのように読み込まれ、スプレッドシートに XLL のバイナリ コードが表示されます。)
以前の (Windows XP/32) XLL の経験に基づくと、このメッセージは、必要な DLL の不足を含め、ほとんどすべてを意味する可能性があります。そう、
Windows 7/64 コンピュータの場合:
Microsoft Visual C++ 2010 x64 再頒布可能パッケージ - 10.0.30319 をインストールします。影響なし。
Microsoft Visual C++ 2012 再頒布可能パッケージ (x64) - 11.0.51106 をインストールします。影響なし。
「Steve P. Miller によって開発された Win64(x64) バージョン 2.2.600 用の Dependency Walker」を実行します。
ファイル - 開く - Generic.xll
見つからないことを示しています:
-- XLCALL32.DLL // XLL の動作に関する Windows XP の経験から典型的なもの
-- API-MS-WIN-CORE-COM-L1-1-0.DLL
-- API-MS-WIN -CORE-WINRT-ERROR-L1-1-0.DLL
-- API-MS-WIN-CORE-WINRT-L1-1-0.DLL
-- API-MS-WIN-CORE-WINRT-ROBUFFER-L1-1 -0.DLL
-- API-MS-WIN-CORE-WINRT-STRING-L1-1-0.DLL
-- API-MS-WIN-SHCORE-SCALING-L1-1-0.DLL
-- DCOMP.DLL
- - IESHIMS.DLL // XLL の動作に関する Windows XP の経験から典型的なもの
だから、今私は困惑しています。64 ビットに問題があると思っていましたが、Windows 7 に問題があるのではないかと考え始めています。
ヘルプ?
ありがとう、
ティム