cookiemonster

Read / Edit ODBC 32bit settings

3 posts in this topic

Hi,

 

Im about to start making an autoit script that will read the current ODBC settings, have a drop down to select a different one which would then update the ODBC in windows to use the new settings.

Can anyone point me in the direction of how to read the ODBC 32 bit settings? are they in the registry?

Share this post


Link to post
Share on other sites




Signature beginning:   Wondering who uses AutoIT and what it can be used for ?
* GHAPI UDF - modest begining - comunication with GitHub REST API *
ADO.au3 UDF     POP3.au3 UDF     XML.au3 UDF    How to use IE.au3  UDF with  AutoIt v3.3.14.x  for other useful stuff click the following button

Spoiler

Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind. 

My contribution (my own projects): * Debenu Quick PDF Library - UDF * Debenu PDF Viewer SDK - UDF * Acrobat Reader - ActiveX Viewer * UDF for PDFCreator v1.x.x * XZip - UDF * AppCompatFlags UDF * CrowdinAPI UDF * _WinMergeCompare2Files() * _JavaExceptionAdd() * _IsBeta() * Writing DPI Awareness App - workaround * _AutoIt_RequiredVersion() * Chilkatsoft.au3 UDF * TeamViewer.au3 UDF * JavaManagement UDF * VIES over SOAP * WinSCP UDF * GHAPI UDF - modest begining - comunication with GitHub REST API *

My contribution to others projects or UDF based on  others projects: * _sql.au3 UDF  * POP3.au3 UDF *  RTF Printer - UDF * XML.au3 - BETA * ADO.au3 UDF SMTP Mailer UDF *

Useful links: * Forum Rules * Forum etiquette *  Forum Information and FAQs * How to post code on the forum * AutoIt Online Documentation * AutoIt Online Beta Documentation * SciTE4AutoIt3 getting started * Convert text blocks to AutoIt code * Games made in Autoit * Programming related sites * Polish AutoIt Tutorial * DllCall Code Generator * 

Wiki: Expand your knowledge - AutoIt Wiki * Collection of User Defined Functions * How to use HelpFile * Best coding practices * 

IE Related:  * How to use IE.au3  UDF with  AutoIt v3.3.14.x * Why isn't Autoit able to click a Javascript Dialog? * Clicking javascript button with no ID * IE document >> save as MHT file * IETab Switcher (by LarsJ ) * HTML Entities * _IEquerySelectorAll() (by uncommon) * 

I encourage you to read: * Global Vars * Best Coding Practices * Please explain code used in Help file for several File functions * OOP-like approach in AutoIt * UDF-Spec Questions *  EXAMPLE: How To Catch ConsoleWrite() output to a file or to CMD *

"Homo sum; humani nil a me alienum puto" - Publius Terentius Afer
"Program are meant to be read by humans and only incidentally for computers and execute" - Donald Knuth, "The Art of Computer Programming"
:naughty:  :ranting:, be  :) and       \\//_.

Anticipating Errors :  "Any program that accepts data from a user must include code to validate that data before sending it to the data store. You cannot rely on the data store, ...., or even your programming language to notify you of problems. You must check every byte entered by your users, making sure that data is the correct type for its field and that required fields are not empty."

Signature last update: 2017-06-04

Share this post


Link to post
Share on other sites

Be extra careful with 32/64bit when working on 64bit systems :)  - from experience

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now

  • Similar Content

    • Skysnake
      By Skysnake
      Question
      How to detect / determine if requested ODBC driver is not available? Not installed?  Is there a specific function / error code to check for?
      I asked this on the ADO.UDF support page, but I think the issue is not limited to that UDF.  What test can be run to determine if the requested ODBC data driver is available?
      Skysnake
    • GarnetDagger
      By GarnetDagger
      I would love to have some help or guidance 
      I am able to Query from my database but I am not able to Update or insert etc because I lack the knowledge for it
       
      this is my code for to retrieve some data from and works perfect
       
      Dim $ueberschriften = "" Dim $anzahl = 0 Dim $dsncount = 1 Global $DSN = "MTXXV5" Global $Query = "Select * from VIEWS" Func SSSQL($SSQuery) ;SuperSonicSQL     ConsoleWrite($SSQuery & @LF)     $cmboVal = ""     $adoCon = ObjCreate("ADODB.Connection")     $adoCon.Open($DSN)     $adoRs = ObjCreate("ADODB.Recordset")     $adoSQL = $SSQuery     $adoRs.CursorType = 2     $adoRs.LockType = 3     $adoRs.Open($adoSQL, $adoCon)     With $adoRs         Global $QueryAnswer = .GetRows     EndWith     Return $QueryAnswer EndFunc   ;==>SSSQL and this is my failed attempt, The Query is correct but I want to able to use it in autoit instead of have to manual update or insert into flamerobin
       
      $SS_SQL_Insert_or_Update = "INSERT INTO DETECTION (DNAME,DTYPE,WINNAME,AREA,COLOR,MOUSE) VALUES ('PopUpTradeInviteYes        s                    ','SEARCH','XXX','175,240,550,240,65,228,82,234','5062478','0') " Func SSSQLIU($SS_SQL_Insert_or_Update) ;SuperSonicSQL :P     $cmboVal = ""     $adoCon = ObjCreate("ADODB.Connection")     $adoCon.Open($DSN)     $adoRs = ObjCreate("ADODB.Record")     $adoSQL =$SS_SQL_Insert_or_Update ;~     $adoRs.CursorType = 2     $adoRs.LockType = 4     $adoRs.Open($adoSQL, $adoCon) ;~     With $adoRs ;~         Global $QueryAnswer = .GetRows ;~     EndWith ;~     Return $QueryAnswer EndFunc   ;==>SSSQL I am at a total loss and I am just trying this at random but I am also going to sleep now
      I would love to have some minor examples
      "C:\_CC_V10_DetectionTAB.au3" (174) : ==> The requested action with this object has failed.:
      $adoRs.Open($adoSQL, $adoCon)
      $adoRs^ ERROR
    • jaeger52
      By jaeger52
      Hello all! I've been scouring the interwebs for a whiff of anybody else who's had this problem and come up empty. Here's the deal: I wrote a simple little script that I've used for months now quite successfully, but I'm also experiencing an error where the ODBC login window will pop up, garbage text will automatically dump into the username, password, and sometimes the source fields, and then it will automatically try to log in and cause it to fail. It's intermittent, and I have no idea what's causing it. It happens in databases that I've never automated, but it does exactly what the script I wrote should do except that it's garbage text being entered. I've attached the script I mentioned. I'd appreciate anything anybody can suggest or recommend. Thanks!
      Send ( "{LWin}" ) Sleep ( 2000 ) Send ("Drive:\Folder\Database.accdb /x Macro") Send ( "{ENTER}" ) WinWaitActive ( "Oracle ODBC Driver Connect" ) Send ( "Username" ) Send ( "{TAB}" ) Send ( "Password" ) ControlClick ( "Oracle ODBC Driver Connect", "OK", 1 )  
    • bab
      By bab
      I need to change/edit the password on a system dsn that uses sql authentication. I need to modify this  on 400 workstations. I wrote the following to change the password: 
       
      run("rundll32.exe shell32.dll,Control_RunDLL odbccp32.cpl",@SystemDir,@SW_HIDE)
      winwait("ODBC Data Source Administrator")
      ControlCommand ( "ODBC Data Source Administrator", "", "SysTabControl321" , "tabright")
      Send("!c")
      winwait("Microsoft SQL Server DSN Configuration")
      WinWaitActive("Microsoft SQL Server DSN Configuration", "This wizard")
      Send("!n")
      WinWaitActive("Microsoft SQL Server DSN Configuration", "How should")
      Send("!P")
      sleep(100)
      send("newpassword")
      sleep(100)
      Send("!n")
      WinWaitActive("Microsoft SQL Server DSN Configuration", "")
      Send("!n")
      WinWaitActive("Microsoft SQL Server DSN Configuration", "&Change the language of SQL Server system messages to")
      Send("!c")
      Send("{ENTER}")
      winwait("ODBC Microsoft SQL Server Setup")
      send("!t")
      WinWaitActive("SQL Server ODBC Data Source Test", "Test Results")
      Send("{ENTER}")
      winwait("ODBC Microsoft SQL Server Setup")
      send("{TAB}")
      sleep(100)
      Send("{ENTER}")
      winwait("ODBC Data Source Administrator")
      Send("{ENTER}")
      My dilemma is that I have more than one system dsn. I cannot get to the right system dsn to edit (click the configure button). The editor does not show this list or text. How can I move to the right dsn to modify.
      This is for 3rd party software; I have to use sql authentication. Thanks to anyone that can help.
       
    • Tippex
      By Tippex
      I had a problem getting a connection to "SQL Server" on 64 bit PCs (running XP) even though 32 bit PCs connected easily.
      Even compiling for 32bit was (initially) insufficient and to get it working at all on a 64bit PC, I ended up forcing its use of TCP/IP protocol by specifying a port number (that is apparently picked up as a default by 32 bit PCs once "SQL Server" has been added with it configured in "Control Panel --> Administrative Tools --> Databases(ODBC) --> Add --> SQL Server --> Client Configuration"
      This worked for me on a 64bit PC, but only when compiled in 32bit:
      $sqlCon = ObjCreate("ADODB.Connection")
      $sqlCon.Open("DRIVER={SQL Server};SERVER=name.of.server,port_number;DATABASE=name_of_database;UID=logon_ID;PWD=password;")
      If @error Then
       MsgBox(0, "Problem", "SQL Connection Failed")
      Else
       MsgBox(0, "Success", "SQL Connection OK")
      EndIf
      Also, I found that the "SQL Server" needed to be added to the Databases(ODBC) as shown above (and tested OK) before the AutoIT script worked but (strangely) it could be later removed from Databases(ODBC) and it still worked (perhaps it just needed to setup defaults).
      Does anyone know how I can get the above working when compiled in 64bit too?
      On a X64 bit PC, the above script it will fail to work with:
      #AutoIt3Wrapper_UseX64=y
      but works OK with
      #AutoIt3Wrapper_UseX64=n