Please be aware that the content in SAP SQL Anywhere Forum will be migrated to the SAP Community in August and this forum will be retired.

We are having weird issue with our ODBC system DSN. With our application automatically system DSN is created but our client claims that after some time system DSN is deleted/removed. We couldnt find any logs for that but we assume that this is deleted/removed by user (client) or their application (domain policy or some restrictions). Could anyone help how to find out above issue? Our application name is Micros RES 3700 and SQL Anywhere 11 is installed with application which creates system DSN.

asked 27 Mar '19, 01:38

jibin's gravatar image

accept rate: 0%

As system (and user) DSN information is stored in the Windows registry, you are basically asking whether changes in the registry are tracked/logged.

AFAIK the registry can itself use auditing (disabled by default), and there is the API RegNotifyChangeKeyValue that allows programs to be notified about registry changes.

Additionally, tools like Sysinternals's Process Monitor can be used to track changes but I guess not post mortem...

So generally, you may search for answers in general Windows forums...

(27 Mar '19, 04:19) Volker Barth

Two things to have the client check:

1) Are they using the correct ODBC tool (32-bit or 64-bit) to look for the DSN? Windows has a separate tool for each. You might have to explain which one your application uses.

2) Are they checking for both System DSNs and User DSNs? The DSN might have been installed in either place, depending on how the install happened.

(27 Mar '19, 09:42) RossEvans

The creation and deletion of SQL Anywhere DSNs can be automated by running the dbdsn.exe utility with the -ws, -wu and -d options (create as System, create as User, and delete).

I am not familiar with the Micros setup, but most embedded products use all the automation they can to hide the setup from view.

Perhaps something went awry with maintenance or customization of the setup.

(27 Mar '19, 13:48) Breck Carter

FWIW applications can free themselves from dependence on DSNs by using a DSN-less connection string. In many cases, this can be as simple as coding this as the connection string

ENG=ddd; DBN=ddd; UID=dba; PWD=sql; DRIVER=SQL Anywhere 11;

instead of DSN=whatever.

(27 Mar '19, 13:53) Breck Carter

Thank you all for the information and advice for the above question. We will certainly check with customer and explain which ODBC (Micros uses 32 Bit) to check. Thanks again.

(28 Mar '19, 10:16) jibin
Be the first one to answer this question!
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text]( "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:


question asked: 27 Mar '19, 01:38

question was seen: 1,644 times

last updated: 28 Mar '19, 10:16