`

通用数据链接文件 (*.UDL) 的创建

 
阅读更多

'引用 Microsoft OLE DB Service Component 1.0 Type Library
Option Explicit
Private Sub Command1_Click()
Dim x As New MSDASC.DataLinks
x.hWnd = Me.hWnd
Dim s As String
On Error GoTo ErrorHandler
s = x.PromptNew
On Error GoTo 0
If VBA.Len(VBA.Trim(s & "")) > 0 Then
Dim CommonDialog1 As New MSComDlg.CommonDialog
CommonDialog1.DefaultExt = ".udl"
CommonDialog1.Filter = "通用数据链接文件 (*.UDL)|*.udl"
CommonDialog1.DialogTitle = "保存为通用数据链接文件"
CommonDialog1.Flags = cdlOFNOverwritePrompt
CommonDialog1.CancelError = True
On Error GoTo ErrorHandler
CommonDialog1.ShowSave
On Error GoTo 0
s = "[oledb]" & vbCrLf _
& "; Everything after this line is an OLE DB initstring" & vbCrLf _
& s & vbCrLf
Dim BytesBuffer() As Byte
BytesBuffer = VBA.StrConv(VBA.StrConv(s, vbUnicode), vbFromUnicode)
Dim i As Long
ReDim BytesBuffer0(1) As Byte
BytesBuffer0(0) = 255 '&HFF
BytesBuffer0(1) = 254 '&HFE
If VBA.Len(VBA.Trim(VBA.Dir(CommonDialog1.FileName))) > 0 Then
VBA.Kill CommonDialog1.FileName
End If
On Error GoTo ErrorHandler
i = VBA.FreeFile
Open CommonDialog1.FileName For Binary Access Write As #i
Put #i, , BytesBuffer0
Put #i, , BytesBuffer
Close #i
On Error GoTo 0
If VBA.MsgBox("Test?", vbYesNo) = vbYes Then
Dim adoConnection As New ADODB.Connection
adoConnection.Open "File Name=" & CommonDialog1.FileName
VBA.MsgBox "OK!"
End If
End If
Exit Sub
ErrorHandler:
If Err.Number <> 91 And Err.Number <> 32755 Then
VBA.MsgBox Err.Number & ":" & vbCrLf & Err.Description
End If
End Sub

Private Sub Command2_Click()
Dim CommonDialog1 As New MSComDlg.CommonDialog
CommonDialog1.DefaultExt = ".udl"
CommonDialog1.Filter = "通用数据链接文件 (*.UDL)|*.udl"
CommonDialog1.DialogTitle = "打开通用数据链接文件"
'CommonDialog1.Flags = cdlOFNOverwritePrompt
CommonDialog1.CancelError = True
On Error GoTo ErrorHandler
CommonDialog1.ShowOpen
On Error GoTo 0
If VBA.Len(VBA.Trim(VBA.Dir(CommonDialog1.FileName))) > 0 Then
VBA.MsgBox GetConnectionStringFromUDL(CommonDialog1.FileName)
End If
Exit Sub
ErrorHandler:
If Err.Number <> 91 And Err.Number <> 32755 Then
VBA.MsgBox Err.Number & ":" & vbCrLf & Err.Description
End If
End Sub

Public Function GetConnectionStringFromUDL(UDLFileName As String) As String
If VBA.Len(VBA.Trim(VBA.Dir(UDLFileName & ""))) > 0 Then
Dim BytesBuffer() As Byte
ReDim BytesBuffer(VBA.FileLen(UDLFileName) - 133) As Byte
Dim i As Long
i = VBA.FreeFile
Open UDLFileName For Binary Access Read As #i
Get #i, 129, BytesBuffer
Close #i
GetConnectionStringFromUDL = VBA.Trim(VBA.StrConv(VBA.StrConv(BytesBuffer, vbFromUnicode), vbUnicode))
End If
End Function

分享到:
评论

相关推荐

    vb 配置udl

    UDL(Universal Data Link)是Microsoft提供的一种通用数据链接方式,它允许用户通过一个简单的界面配置数据连接,以便在各种应用程序中使用不同的数据库。在VB(Visual Basic)编程环境中,利用UDL文件可以轻松地...

    delphi 数据录入通用方法:dbpanel

    1. **数据绑定**:在Delphi中,数据绑定是通过链接控件到数据源实现的。例如,DBEdit控件可以直接绑定到TClientDataSet的字段,这样当用户在DBEdit中输入数据时,数据会自动同步到数据库中。 2. **DBPanel的使用**...

    源代码-Excel二维表数据转SELECT CASE 工具 v2.0.zip

    3. **数据库连接文件**:如`.mdb`(Access数据库)或`.udl`(通用数据链接),用于连接到数据库。 4. **样式表文件**:`.css`,定义页面的布局和样式。 5. **脚本库**:`.dll`或`.vbslib`,包含可重用的函数和方法。...

    New-folder-(2).rar_delphi penjualan

    3. **数据库连接文件**:如果应用程序涉及到数据库交互,可能会有 `.dbc`(数据库配置文件)或 `.udl`(通用数据链接)等。 4. **图像和图标**:`.png`, `.jpg`, 或 `.ico` 等文件,用于用户界面的图形元素。 5. *...

    labview与数据库.doc

    ADO 使用通用数据连接 UDL(Universal Data Link)来获取数据库信息,以实现数据库连接。在 Data.mdb所在的文件夹下单击鼠标右键,在弹出的快捷菜单中选择新建&gt;&gt;Microsoft 数据链接,命名新建的数据库链接名称为 LS...

    udl_connector.rar_All Just_edid

    标题 "udl_connector.rar_All Just_edid" 指向的是一个关于电子显示器识别数据(EDID)的软件连接器,用于从UDL(通用显示链接)接口获取EDID信息。EDID是一种标准,用于存储显示器的规格和能力,使计算机能够自动...

    Dreamweaver 获取后台数据

    此外,UDL(通用数据连接)文件在此过程中也扮演了关键角色。UDL文件是一个保存了连接字符串的文件,它可以存储OLE DB连接信息,如提供程序、用户名、密码等。通过创建UDL文件并设置合适的提供程序,我们可以简化...

    检测SqlServer数据库是否能连接的小技巧

    注:udl(Universal Data Link)是通用数据连接文件,使用通用数据链接 (UDL) 文件来保存连接字符串。 2.打开这个文件以后输入服务器的ip(因为我是本机所以用了实例名)和用户名密码就可以测试连接了,是不是很方便。...

    配置SQL_Server的身份验证方式

    - 双击该文件以打开“数据链接属性”对话框。 - 在“提供程序”选项卡中选择合适的提供程序。 - 在“高级”选项卡中输入数据源名称(如`W2K3-C\SQLEXPRESS`),选择“使用指定的用户名和密码”,并输入sa的用户名和...

    LabVIEW与数据库的连接.pdf

    此外,文档还涉及到了连接信息的配置,比如如何使用DSN、DSNLess连接以及UDL(Universal Data Link,通用数据链接)文件。这些连接方法决定了LabVIEW如何找到和连接到数据库服务器。 对于ODBC连接,文档特别提到了...

Global site tag (gtag.js) - Google Analytics