HOW TO: เรียกในไลบรารีคลาส Visual Basic .NET จาก Visual Basic สำหรับโปรแกรมประยุกต์ใน Microsoft Office

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 317535 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

ใช้คำแนะนำทีละขั้นตอนนี้เพื่อเรียกไลบรารีของคลา.NET จาก Visual Basic สำหรับโปรแกรมประยุกต์ ตัวอย่างนี้แสดงวิธี Visual Basic สำหรับโปรแกรมประยุกต์โปรแกรมสามารถใช้ไลบรารีของคลา Visual Basic .NET เพื่อเข้ารหัส และถอดรหัสลับเป็นสายอักขระ คุณสามารถใช้ namespace เข้ารหัส รวมอยู่ในใน.NET Framework สำหรับการเข้ารหัส/ถอดรหัสลับได้

สร้างไลบรารีคลาส Visual Basic .NET

  1. เริ่ม Microsoft Visual Studio .NET ในการแฟ้ม:เมนู ให้ชี้ไปที่ใหม่แล้ว คลิกProject. ภายใต้โครงการ visual Basicเลือกไลบรารีคลาส. ชื่อคลาCryptoClassคลิกตกลง. Class1 ถูกสร้าง โดยค่าเริ่มต้น
  2. แทนเนื้อหาของClass1มีรหัสต่อไปนี้:

    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 Function
    End Class
    						

    หมายเหตุ:คุณสามารถใช้ของตัวสร้าง GUID ในการสร้าง guid ของใหม่สำหรับ ClassId, InterfaceId และ EventsId เมื่อต้องสร้าง guid ของใหม่ คลิกสร้าง GUIDในการเครื่องมือเมนู
  3. จากคุณสมบัติของโครงการเลือกคุณสมบัติการตั้งค่าคอนฟิก. คลิกการสร้างแล้ว เลือกนั้นลงทะเบียนสำหรับ Interop COMกล่องกาเครื่องหมาย คลิกตกลง.
  4. ในการการสร้างเมนู คลิกสร้างโซลูชันเมื่อต้องการสร้าง DLL

สร้าง Visual Basic สำหรับแมโครแอปพลิเคชันการเรียกการไลบรารีคลาส.NET

  1. เริ่มการทำงานMicrosoft Excel. กด ALT+F11 เพื่อเริ่ม Visual Basic Editor
  2. ในการแทรกเมนู คลิกโมดูลเมื่อต้องการแทรกโมดูลที่ว่างเปล่า
  3. ในการเครื่องมือเมนู คลิกอ้างอิง:. เพิ่มการอ้างอิงไปยังCryptoClassไลบรารีแล้วคลิกตกลง.
  4. พิมพ์ หรือวางรหัสต่อไปนี้ในหน้าต่างรหัส Module1:
    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
    					

รหัสทดสอบ

  1. ในการเครื่องมือเมนู คลิกมาโคร. ในรายชื่อของแมโคร คลิกTestCryptoแล้ว คลิกเรียกใช้.
  2. ถ้ากล่องข้อความปรากฏในการแสดงสายอักขระการเข้ารหัสลับ คลิกตกลง. กล่องข้อความที่สองปรากฏในการแสดงสตริงที่ decrypted
  3. หากไลบรารีคลาสจำเป็นต้องมีการลงทะเบียนบนคอมพิวเตอร์เครื่องอื่นที่เรียกใช้.NET Framework การคัดลอก DLL ระบบ และเรียกใช้คำสั่งต่อไปนี้:
    /tlb:CryptoClass.tlb CryptoClass.dll regasm

ข้อมูลอ้างอิง

สำหรับข้อมูลเพิ่มเติม ให้คลิกหมายเลขบทความต่อไปนี้ เพื่อดูบทความในฐานความรู้ของ Microsoft::
301070HOW TO: การเข้ารหัส และถอดรหัสลับแฟ้ม โดยใช้ Visual Basic .NET
สำหรับข้อมูลเพิ่มเติม ให้ดูเว็บไซต์ต่อไปนี้ของนักพัฒนา Microsoft Network (MSDN):
.aspx http://msdn2.microsoft.com/en-us/library/aa188489 (office.10)

คุณสมบัติ

หมายเลขบทความ (Article ID): 317535 - รีวิวครั้งสุดท้าย: 13 มกราคม 2554 - Revision: 4.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
Keywords: 
kbcrypt kbsecurity kbhowtomaster kbmt KB317535 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:317535

ให้ข้อเสนอแนะ

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com