Atlanta Custom Software Development 

 
   Search        Code/Page
 

User Login
Email

Password

 

Forgot the Password?
Services
» Web Development
» Maintenance
» Data Integration/BI
» Information Management
Programming
  Database
Automation
OS/Networking
Graphics
Links
Tools
» Regular Expr Tester
» Free Tools

ProgIDToCLSID - Convert a ProgID into a CLSID

Total Hit ( 4185)

Rate this article:     Poor     Excellent 

 Submit Your Question/Comment about this article

Rating


 


Click here to copy the following block
Private Declare Function CLSIDFromProgID Lib "ole32.dll" (ByVal lpszProgID As _
  Long, pCLSID As Any) As Long
Private Declare Function StringFromCLSID Lib "ole32.dll" (pCLSID As Any, _
  lpszProgID As Long) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (dest As _
  Any, source As Any, ByVal bytes As Long)
Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal pv As Long)

' Convert a ProgID (such as "Word.Application") into the
' string representation of its CLSID

Function ProgIdToCLSID(ByVal ProgID As String) As String
  Dim pResult As Long, pChar As Long
  Dim char As Integer, length As Long
  ' No need to use a special UDT
  Dim guid(15) As Byte
  
  ' get the CLSID in binary form
  CLSIDFromProgID StrPtr(ProgID), guid(0)
  ' convert to a string, get pointer to result
  StringFromCLSID guid(0), pResult
  ' find the terminating null char
  pChar = pResult - 2
  Do
    pChar = pChar + 2
    CopyMemory char, ByVal pChar, 2
  Loop While char
  ' now get the entire string in one operation
  length = pChar - pResult
  ' no need for a temporary string
  ProgIdToCLSID = Space$(length \ 2)
  CopyMemory ByVal StrPtr(ProgIdToCLSID), ByVal pResult, length
  ' release the memory allocated to the string
  CoTaskMemFree pResult
End Function


Submitted By : Nayan Patel  (Member Since : 5/26/2004 12:23:06 PM)

Job Description : He is the moderator of this site and currently working as an independent consultant. He works with VB.net/ASP.net, SQL Server and other MS technologies. He is MCSD.net, MCDBA and MCSE. In his free time he likes to watch funny movies and doing oil painting.
View all (893) submissions by this author  (Birth Date : 7/14/1981 )


Home   |  Comment   |  Contact Us   |  Privacy Policy   |  Terms & Conditions   |  BlogsZappySys

© 2008 BinaryWorld LLC. All rights reserved.