' A class that creates UDL files for use as ADO Data Sources.' Universal Data link files are handy for select data sources but there' are lack of a way to create/edit this files. The little program i' attached teaches how to read/write a UDL file.' IMPORTANT: requires that you add a reference to the following library:' Microsoft OLE DB Service Component 1.0 Type Llibrary ' in the oledb32.dll file' Usage example:' ' To create a new UDL file.' Dim udl As New cUdl' If udl.CreateUDL Then udl.SaveToFile "c:yourfile.udl"' ' To open and edit an existing UDL file' Dim udl As New cUdl' udl.LoadFromFile "c:yourfile.udl"' udl.OpenUDLPrivate Const CON_UDL_LINE1 = "[oledb]"Private Const CON_UDL_LINE2 = "; Everything after this line is an OLE DB " _ & "initstring"Private mvarADOConnectString As StringPublic Property Let ADOConnectString(ByVal vData As String) mvarADOConnectString = vDataEnd PropertyPublic Property Get ADOConnectString() As String ADOConnectString = mvarADOConnectStringEnd PropertyPublic Function CreateUDL() As Boolean On Error GoTo Err_CreateUDL Dim pDataLink As New DataLinks, pConn As Connection Set pConn = pDataLink.PromptNew pConn.Open mvarADOConnectString = pConn.ConnectionString pConn.Close CreateUDL = True Exit FunctionErr_CreateUDL: CreateUDL = FalseEnd FunctionPublic Function OpenUDL(Optional ByVal strConnectString As String) As Boolean On Error GoTo Err_OpenUDL Dim pDataLink As New DataLinks, pConn As New Connection If mvarADOConnectString = vbNullString Then OpenUDL = CreateUDL Exit Function Else pConn.ConnectionString = mvarADOConnectString If pDataLink.PromptEdit(pConn) Then pConn.Open mvarADOConnectString = pConn.ConnectionString pConn.Close End If End If OpenUDL = True Exit FunctionErr_OpenUDL: OpenUDL = FalseEnd FunctionPublic Sub SaveToFile(ByVal strUDLFile As String) Dim strBuf As String, intFileNum As Integer strBuf = CON_UDL_LINE1 & vbCrLf & CON_UDL_LINE2 & vbCrLf & _ mvarADOConnectString strBuf = StrConv(strBuf, vbUnicode) intFileNum = FreeFile If Dir(strUDLFile) <> vbNullString Then Kill strUDLFile Open strUDLFile For Binary As #intFileNum Put #intFileNum, , strBuf Close #intFileNumEnd SubPublic Function LoadFromFile(ByVal strUDLFile As String) As Boolean Dim intFileNum As Integer, strBuf As String, i As Integer intFileNum = FreeFile Open strUDLFile For Binary As #intFileNum strBuf = Input(LOF(intFileNum), #intFileNum) Close #intFileNum strBuf = StrConv(strBuf, vbFromUnicode) i = InStr(strBuf, "Provider=") If i > 0 Then mvarADOConnectString = Mid(strBuf, i) LoadFromFile = True Else LoadFromFile = False End IfEnd Function'##############################################'# This tip has been brought to you by Shoutsoft, Inc, '# the creators of COM Express, a tool which '# generates serious N(3)-tier VB application'# (with GUI, COM+ and Unlimited Hierarchical support) '# in minutes. Learn more at http://www.shoutsoft.com.'##############################################

Top Careers at Microsoft
Microsoft has gained its position as one of the top companies in the world, and Microsoft careers are flourishing. This multinational company is efficiently developing popular software and computers with other consumer electronics. It is a dream come true for so many people to acquire a high paid, high-prestige job