Click here to Skip to main content
65,938 articles
CodeProject is changing. Read more.
Articles
(untagged)

Using DataLinks to get or edit a connection string

0.00/5 (No votes)
9 Mar 2004 1  
Accessing DataLinks from a .NET program to get or edit a connection string.

Sample Image - DataLinks.gif

Introduction

A similar article was written on this subject but this article deals with accessing DataLinks from a .NET program to get or edit a connection string. Your project must reference DataLinks and ADODB, then execute the PromptNew or PromptEdit methods.

Step by step procedure

  1. Reference ADODB in your project. This is required to read the COM object passed back from DataLinks. This file is located here: c:\Program Files\Microsoft.NET\Primary Interop Assemblies\adodb.dll
  2. Reference DataLinks in your project. DataLinks used to be MSDASC.dll, but has changed to OLEDB32.DLL (see KB). This file is located here: C:\Program Files\Common Files\System\Ole DB\OLEDB32.DLL
  3. Create a text box and a button on a Windows Form. In the button's click event, use this code:
private void ButtonGetConnectionString_Click(object sender, 
  System.EventArgs e)
{
   /* 
        Reference DataLinks
        NOTE: Reference 
              C:\Program Files\Common Files\System\Ole DB\OLEDB32.DLL
              (Was MSDASC.dll) 
        SEE:
           http://support.microsoft.com:80/support/kb/articles/Q225/1/32.asp
   */
      MSDASC.DataLinks dataLinks = new MSDASC.DataLinksClass();
      //note that a reference to: 

      //  c:\Program Files\Microsoft.NET\Primary Interop Assemblies\adodb.dll

      //is also required to read the ADODB._Connection result

      ADODB._Connection connection;                         
      //are we editing an existing connect string or getting a new one?

      if(this.txtConnectionString.Text==String.Empty)
      {     
            // get a new connection string

            try   
            {           
               //Prompt user for new connect string

               connection = (ADODB._Connection)dataLinks.PromptNew();
               //read result

               this.txtConnectionString.Text=
                    connection.ConnectionString.ToString();
            }
            catch(Exception ex)     
            {
                  MessageBox.Show(ex.ToString());     
            }
      }
      else
      {     
            // edit connection string

            connection=new ADODB.ConnectionClass();
            connection.ConnectionString=this.txtConnectionString.Text;
            //set local COM compatible data type

            object oConnection=connection;
            try   
            {     
                  //prompt user to edit the given connect string

                  if((bool)dataLinks.PromptEdit(ref oConnection))
                  {
                        this.txtConnectionString.Text=
                             connection.ConnectionString;
                  }
            }
            catch(Exception ex)
            {
                  MessageBox.Show(ex.ToString());     
            }
      }
}

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here