VBAコードのデジタル署名が有効かどうかを確認する
Contents
[
Hide
]
Aspose.Cells for Python via .NETは、VBAコードのデジタル署名が有効かどうかをWorkbook.vba_project.is_valid_signedプロパティを使用して確認できます。有効な署名の場合はtrueを返し、それ以外の場合はfalseを返します。VBAコードの署名は、コードを変更した場合に無効になります。
PythonでVBAコードのデジタル署名の有効性を確認する方法
提供されたリンクからサンプルのExcelファイルをダウンロードし、このプロパティの使用方法を示すコードを実演しています。同じExcelファイルには有効な署名がありますが、VBAコードを変更してワークブックを保存した後、再チェックすると署名が無効になることが分かります。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from aspose.cells import Workbook | |
# For complete examples and data files, please go to https:# github.com/aspose-cells/Aspose.Cells-for-.NET | |
# The path to the documents directory. | |
dataDir = RunExamples.GetDataDir(".") | |
workbook = Workbook(dataDir + "sampleVBAProjectSigned.xlsm") | |
# Signature is valid | |
print("Is VBA Code Project Valid Signed: " + str(workbook.vba_project.is_valid_signed)) | |
# Modify the VBA Code, save the workbook then reload | |
# VBA Code Signature will now be invalid | |
code = workbook.vba_project.modules[1].codes | |
code = code.replace("Welcome to Aspose", "Welcome to Aspose.Cells") | |
workbook.vba_project.modules[1].codes = code | |
# Save | |
workbook.save(dataDir + "output_out.xlsm") | |
# Reload | |
workbook = Workbook(dataDir + "output_out.xlsm") | |
# Now the signature is invalid | |
print("Is VBA Code Project Valid Signed: " + str(workbook.vba_project.is_valid_signed)) |