bạn có thể bảo vệ VBA, mã của bạn bằng cách chuyển đổi nó vào một XLA mật khẩu bảo vệ và obfuscating mã.nhưng bảo mật mật khẩu yếu. Thật dễ dàng để làm cho XLA hoạt động với tất cả các phiên bản Excel.
Một giải pháp thay thế dễ dàng là chuyển đổi sang phần bổ trợ Tự động hóa VB6 đã biên dịch. An ninh là tốt, dễ dàng chuyển đổi, nó sẽ xử lý cả UDF và bổ trợ Command. Nhưng nó sẽ không hoạt động với Excel 2010-64 hoặc các phiên bản Excel đầu tiên như XL 2000. Bạn sẽ cần một trình biên dịch VB6, có thể khó tìm.
Thay thế khó hơn là chuyển đổi thành .NET. Nếu bạn sử dụng một trong nhiều obfuscators thì bảo mật là hợp lý. Hiệu suất sẽ kém, trừ khi bạn sử dụng một trong những công cụ cho phép truy cập .NET thông qua giao diện XLL, chẳng hạn như Excel DNA hoặc Addin Express. Khả năng 64 bit cũng có sẵn.
Nếu hiệu suất và bảo mật là quan trọng, bạn sẽ cần phải chuyển đổi sang C++ XLL, nhưng đây là công việc khó khăn khi đến từ VBA.
Nguồn
2011-02-08 22:46:30
Tôi không biết về DLL, nhưng bạn cũng có thể đạt được mục tiêu của mình bằng cách bảo vệ mã của bạn, lưu mã đó làm bổ trợ và triển khai nó như vậy. –
@iDevlop: Tôi sẽ sử dụng addin nếu được sử dụng bởi hơn 50 người tôi đoán .. phải không? – Skuta
@Skuta: không, lưu dưới dạng bổ trợ là mẹo 5 phút! Chỉ cần không bằng chứng của hacker, như magallanes chỉ nó, nhưng hoàn hảo để ngăn chặn người dùng doanh nghiệp để xem mã, và để cập nhật âm thầm. –