Làm thế nào để: Gọi a Visual Basic.Thư viện NET hạng từ Visual Basic cho các ứng dụng trong Microsoft Office

Hỗ trợ dành cho Office 2003 đã kết thúc

Microsoft đã kết thúc hỗ trợ dành cho Office 2003 vào ngày 8 tháng 4 năm 2014. Thay đổi này đã ảnh hưởng đến các bản cập nhật phần mềm và các tùy chọn bảo mật của bạn. Tìm hiểu ý nghĩa của điều này với bạn và cách thực hiện để luôn được bảo vệ.

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:317535
Bài viết này đã được lưu trữ. Bài viết được cung cấp "nguyên trạng" và sẽ không còn được cập nhật nữa.
TÓM TẮT
Sử dụng này hướng dẫn từng bước để gọi một.NET lớp thư viện từ Visual Basic cho các ứng dụng. Mẫu này cho thấy làm thế nào một Visual Basic cho Chương trình ứng dụng có thể sử dụng một Visual Basic.Thư viện NET lớp để mã hóa và giải mã một chuỗi. Bạn có thể sử dụng không gian tên mật mã học, bao gồm trong các.NET Khuôn khổ, để mã hóa/giải mã.

back to the top

Tạo Visual Basic.NET lớp thư viện

  1. Bắt đầu Microsoft Visual Studio.NET. Trên các Tệp trình đơn, điểm đến Mới, sau đó bấm Dự án. Dưới Visual Basic dự án, chọn Thư viện lớp. Tên lớp CryptoClass và nhấp vào Ok. Class1 được tạo ra theo mặc định.
  2. Thay thế các nội dung của Class1 với đoạn mã sau:

    Imports System.Security.Cryptography<ComClass(Class1.ClassId, Class1.InterfaceId, Class1.EventsId)> Public Class Class1    Public Const ClassId As String = "98349785-8BE2-4604-848D-F5B103D61715"    Public Const InterfaceId As String = "36613EE9-125F-493d-9968-771E18C2226A"    Public Const EventsId As String = "A036F02F-F87E-4548-A536-7DD7EA8E62B5"    Const sKey As String = "MyKey"    Public Function EncryptTripleDES(ByVal sIn As String) As String        Dim DES As New TripleDESCryptoServiceProvider()        Dim hashMD5 As New MD5CryptoServiceProvider()        ' Compute the MD5 hash.        DES.Key = hashMD5.ComputeHash(System.Text.ASCIIEncoding.ASCII.GetBytes(sKey))        ' Set the cipher mode.        DES.Mode = CipherMode.ECB        ' Create the encryptor.        Dim DESEncrypt As ICryptoTransform = DES.CreateEncryptor()        ' Get a byte array of the string.        Dim Buffer As Byte() = System.Text.ASCIIEncoding.ASCII.GetBytes(sIn)        ' Transform and return the string.        Return Convert.ToBase64String(DESEncrypt.TransformFinalBlock(Buffer, 0, Buffer.Length))    End Function    Public Function DecryptTripleDES(ByVal sOut As String) As String        Dim DES As New TripleDESCryptoServiceProvider()        Dim hashMD5 As New MD5CryptoServiceProvider()        ' Compute the MD5 hash.        DES.Key = hashMD5.ComputeHash(System.Text.ASCIIEncoding.ASCII.GetBytes(sKey))        ' Set the cipher mode.        DES.Mode = CipherMode.ECB        ' Create the decryptor.        Dim DESDecrypt As ICryptoTransform = DES.CreateDecryptor()        Dim Buffer As Byte() = Convert.FromBase64String(sOut)        ' Transform and return the string.        Return System.Text.ASCIIEncoding.ASCII.GetString(DESDecrypt.TransformFinalBlock(Buffer, 0, Buffer.Length))    End FunctionEnd Class						

    Chú ý Bạn có thể sử dụng các máy phát điện GUID để tạo mới GUIDs cho các ClassId, InterfaceId và EventsId. Để tạo mới GUIDs, nhấp vào Tạo ra GUID trên các Công cụ trình đơn.
  3. Từ Thuộc tính dự án, chọn Cấu hình thuộc tính. Nhấp vào Xây dựng và sau đó chọn các Đăng ký cho COM Interophộp kiểm. Nhấp vào Ok.
  4. Trên các Xây dựng trình đơn, nhấp vào Xây dựng giải pháp để tạo ra DLL.
back to the top

Tạo một Visual Basic cho các ứng dụng Macro để gọi là.NET lớp thư viện

  1. Bắt đầu Microsoft Excel. Nhấn ALT + F11 để bắt đầu Visual Basic Editor.
  2. Trên các Chèn trình đơn, nhấp vào Mô-đun để chèn một mô-đun để trống.
  3. Trên các Công cụ trình đơn, nhấp vào Tham khảo. Thêm một tham chiếu đến các CryptoClass thư viện và nhấp vào Ok.
  4. Gõ hay dán đoạn mã sau trong mã Module1 cửa sổ:
    Sub TestCrypto()  Dim oCrypto As New CryptoClass.Class1  Dim sCrypt As String    sCrypt = oCrypto.EncryptTripleDES("This is a test")  MsgBox "Encrypted text = " & sCrypt  MsgBox "Decrypted text = " & oCrypto.DecryptTripleDES(sCrypt)End Sub					
back to the top

Kiểm tra mã

  1. Trên các Công cụ trình đơn, nhấp vào Macro. Trong danh sách macro, nhấp vào TestCrypto, sau đó bấm Chạy.
  2. Nếu một hộp thông điệp sẽ xuất hiện đang hiện các chuỗi được mã hóa, Nhấp vào Ok. Một hộp thư thứ hai xuất hiện đang hiện các giải mã chuỗi.
  3. Nếu thư viện lớp học cần phải được đăng ký ngày khác máy tính đang chạy.NET Framework, sao chép tệp DLL hệ thống và chạy các lệnh sau đây:
    regasm CryptoClass.dll /tlb:CryptoClass.tlb
back to the top
THAM KHẢO
Để biết thêm thông tin, bấm vào số bài viết sau để xem bài viết trong Cơ sở Kiến thức Microsoft:
301070Làm thế nào để: Mã hóa và giải mã một tập tin bằng cách sử dụng Visual Basic.NET
Để biết thêm chi tiết, xem Microsoft sau đây Trang Web của nhà phát triển mạng (MSDN): back to the top
cào vba

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 317535 - Xem lại Lần cuối: 12/07/2015 08:53:53 - Bản sửa đổi: 2.0

Microsoft Office Access 2003, Microsoft Access 2002 Standard Edition, Microsoft Excel 2002 Standard Edition, Microsoft Office PowerPoint 2003, Microsoft PowerPoint 2002 Standard Edition, Microsoft Visual Studio .NET 2003 Professional Edition, Microsoft Word 2002 Standard Edition, Microsoft Visual Studio .NET 2002 Professional Edition

  • kbnosurvey kbarchive kbcrypt kbsecurity kbhowtomaster kbmt KB317535 KbMtvi
Phản hồi