Maika8008
Thành viên gạo cội




Hôm nay tôi chia sẻ 1 giải pháp tương đối ổn về việc viết và phân phối ứng dụng bằng VBA. Chia sẻ ở đây tuy thực sự không phải chia sẻ mà là chia sẻ
.
Giải pháp của tôi là:
1. Viết dll bằng VB6.
2. Ghi Mã máy và Mã kích hoạt của người dùng lên Registry.
3. Mã hóa Mã máy + giải mã Mã kích hoạt ở bước 2.
4. So khớp 2 kết quả ở bước 3:
- Nếu khớp: User đã có bản quyền -> tiếp tục dùng.
- Không khớp: Ghi số lần dùng code lên đâu đó ở Registry
+ Cảnh báo số lần còn được dùng.
+ Xóa file nếu cố dùng tiếp đến mức quá số lần quy định.
Tất cả các code để phục vụ giải pháp được học hỏi từ nhiều nơi trên cõi mạng nhưng phần lớn từ GPE, trong đó đặc biệt cảm ơn gợi ý việc dùng VB6 viết dll và làm cho Excel 64 bit dùng được dll VB6 của @Kiều Mạnh. Khả năng của tôi chỉ dừng lại ở đây, các giải pháp nâng cao đối với tôi là quá tầm.
Như đã nói ở trên, bộ file tôi chia sẻ ở đây là để test giải pháp chứ tôi không có ý định chia sẻ ứng dụng (tất nhiên là file đã code hoàn chỉnh để dùng được 10 lần chạy code như mục 4 ở trên đã nêu chứ không phải file demo). Các sư huynh GPE vui lòng đừng "phẫu thuật" cái dll của đệ nhé
và chỉ dẫn thêm cho đệ nếu sẵn lòng.
Tất nhiên là khi đăng ký dll trên một số máy sẽ gặp vấn đề, hay gặp nhất là hệ điều hành không đáp ứng, không thông báo cho ta biết để chọn Yes/No. Gặp vấn đề này tôi không biết cách giải quyết, mong mọi người cùng tìm cách xử lý.
Cập nhật 21/05/2023: Thêm file Hướng dẫn. Các bạn chép vào cùng chỗ với file kế toán.
Cập nhật 26/05/2023: Sửa lỗi file 64bit không chạy được tác vụ lấy mã máy và kích hoạt.

Giải pháp của tôi là:
1. Viết dll bằng VB6.
2. Ghi Mã máy và Mã kích hoạt của người dùng lên Registry.
3. Mã hóa Mã máy + giải mã Mã kích hoạt ở bước 2.
4. So khớp 2 kết quả ở bước 3:
- Nếu khớp: User đã có bản quyền -> tiếp tục dùng.
- Không khớp: Ghi số lần dùng code lên đâu đó ở Registry
+ Cảnh báo số lần còn được dùng.
+ Xóa file nếu cố dùng tiếp đến mức quá số lần quy định.
Tất cả các code để phục vụ giải pháp được học hỏi từ nhiều nơi trên cõi mạng nhưng phần lớn từ GPE, trong đó đặc biệt cảm ơn gợi ý việc dùng VB6 viết dll và làm cho Excel 64 bit dùng được dll VB6 của @Kiều Mạnh. Khả năng của tôi chỉ dừng lại ở đây, các giải pháp nâng cao đối với tôi là quá tầm.
Như đã nói ở trên, bộ file tôi chia sẻ ở đây là để test giải pháp chứ tôi không có ý định chia sẻ ứng dụng (tất nhiên là file đã code hoàn chỉnh để dùng được 10 lần chạy code như mục 4 ở trên đã nêu chứ không phải file demo). Các sư huynh GPE vui lòng đừng "phẫu thuật" cái dll của đệ nhé


Tất nhiên là khi đăng ký dll trên một số máy sẽ gặp vấn đề, hay gặp nhất là hệ điều hành không đáp ứng, không thông báo cho ta biết để chọn Yes/No. Gặp vấn đề này tôi không biết cách giải quyết, mong mọi người cùng tìm cách xử lý.
Cập nhật 21/05/2023: Thêm file Hướng dẫn. Các bạn chép vào cùng chỗ với file kế toán.
Cập nhật 26/05/2023: Sửa lỗi file 64bit không chạy được tác vụ lấy mã máy và kích hoạt.
File đính kèm
Lần chỉnh sửa cuối: