如何使用VB.NET检测Crystal Reports中的可信连接?

时间:2010-03-28 13:04:44

标签: database vb.net crystal-reports trustedconnection

我有一些Crystal Reports连接到Sql Server数据库,我想检测连接是否可信或我是否需要提供登录信息(报告不是由我提供的,所以我无法控制连接方法)。如果我只是盲目地提供登录凭据,如果它是可信连接则不会连接。

以下不起作用:

oRpt = oCR.OpenReport("C:\MyReport.rpt")

if oRpt.Database.Tables(1).ConnectionProperties.Item("Integrated Security") = True then 
       'trusted connection
    else
       'supply login credentials
    end if

它给出以下错误: 没有为类型'IConnectionProperty'定义Operator'='并输入'Boolean'。

我找不到如何在vb.net中为IConnectionProperty创建一个构造。我找不到Crystal解释它的任何文件。 我正在使用Crystal Reports XI - Developer

1 个答案:

答案 0 :(得分:0)

我想我找到了答案。使用属性ConnectBufferString

像这样:

Console.WriteLine(oRpt.Database.Tables(1).ConnectBufferString.ToString)

它会给你一个像这样的字符串

Provider = SQLOLEDB ;; Data Source = MYPC \ SQLEXPRESS ;; Initial Catalog = sample_db ;; User ID = ;; Password = ;; Integrated Security = -1 ;; Use DSN Default Properties = 0 ;; Locale Identifier = 1033 ;; Connect Timeout = 15 ;; General Timeout = 0 ;; OLE DB Services = -5 ;; Current Language = ;; Initial File Name = ;; Use Encryption for Data = 0 ;; Replication server name connect option = ;; Tag尽可能使用列整理= 0

您只需查看以下内容:

集成安全性= -1 =可信连接

集成安全性= 0 =不可信连接

希望这可以帮助别人,因为我浪费了几个小时的时间。