6

.xlsにマクロが含まれているかどうかを、実際にExcelで開かずに、プログラムで判断する方法はありますか?

また、これらのマクロがどの証明書(タイムスタンプ証明書を含む)で署名されているかを調べる方法はありますか?再びExcelを使用せずに。

特に、マクロが存在するときにExcelファイルの生データに常に表示される文字列があるかどうか疑問に思っています。

4

2 に答える 2

2

はい、.xlsファイルを複合ドキュメントファイルとして開き、VBAフォルダーとVBAコードを含むストリームが含まれているかどうかを確認できます。

サンプルコードは、次のCodeProjectの記事で入手できます。

別のOLEDocViewerですが、編集機能があります

証明書情報は、DocumentSummaryInformationストリームに保存されます。そこから情報を読みたい場合は、Microsoftから入手できるファイル形式の仕様を詳しく調べる必要があります。

[MS-OSHARED]:Officeの一般的なデータ型とオブジェクトの構造仕様

[MS-OFFCRYPTO]:Officeドキュメント暗号化構造仕様

于 2010-06-09T14:03:53.670 に答える
0

マクロを含むxlsファイルには、次のような文字列が含まれている必要があります。

Keyboard Shortcut:

これが確実な解決策かどうかはわかりませんが

于 2010-06-09T13:57:46.800 に答える