CrDllObj.cls
上传用户:davilee3
上传日期:2015-04-22
资源大小:986k
文件大小:2k
源码类别:

浏览器

开发平台:

Visual Basic

  1. VERSION 1.0 CLASS
  2. BEGIN
  3.   MultiUse = -1  'True
  4.   Persistable = 0  'NotPersistable
  5.   DataBindingBehavior = 0  'vbNone
  6.   DataSourceBehavior  = 0  'vbNone
  7.   MTSTransactionMode  = 0  'NotAnMTSObject
  8. END
  9. Attribute VB_Name = "cCrDllObj"
  10. Attribute VB_GlobalNameSpace = False
  11. Attribute VB_Creatable = True
  12. Attribute VB_PredeclaredId = False
  13. Attribute VB_Exposed = False
  14. '---------------------------------------------------------------------------------------
  15. ' Module    : cCrDllObj
  16. ' DateTime  : 2005-4-8 00:42
  17. ' Author    : Lingll
  18. ' Purpose   :
  19. '---------------------------------------------------------------------------------------
  20. '   References:
  21. '     VBoostTypes6.olb (VBoost Object Types (6.0))
  22. '     ObjCreate.olb (VBoost: Object Creation and Security)
  23. Option Explicit
  24. Private m_strCLSID As String
  25. Dim Clsid_DllObject As CLSID
  26. Dim m_hModMydll&
  27. Public Sub IniClsId(vStrId$)
  28. Call UnloadDll
  29. m_strCLSID = vStrId
  30. End Sub
  31. Public Function CreateMyDllObject(RelPath As String) As Object
  32. Dim pCF As objcreate.IClassFactory
  33.     If m_hModMydll = 0 Then
  34.         Clsid_DllObject = GUIDFromString(m_strCLSID)
  35.         Set pCF = GetDllClassObject(RelPath, _
  36.             Clsid_DllObject, m_hModMydll)
  37.     Else
  38.         Set pCF = GetDllClassObject(vbNullString, Clsid_DllObject, m_hModMydll)
  39.     End If
  40.     
  41.     Set CreateMyDllObject = pCF.CreateInstance(Nothing, IID_IUnknown_vbb)
  42.     
  43. End Function
  44. Public Sub UnloadDll()
  45.     TestUnloadDll m_hModMydll
  46. End Sub
  47. Private Sub Class_Terminate()
  48. Call UnloadDll
  49. End Sub