가능한 중복 :
Get the list of ODBC data source names programatically using Delphi시스템에서 모든 ODBC 연결을 얻는 방법은 무엇입니까?
내가 로컬 시스템의 ODBC 연결을 얻을 수있는 방법을 찾고 있어요. 현재 내가 사용하는 방법은 작동하는 다음 기능에서 HKCU의 레지스트리 값을 읽는 것입니다.
function GetSystemDSN : TStringlist;
var
ini : TRegistry;
strings : TStringlist;
begin
ini := TRegistry.Create(KEY_READ);
strings := TStringlist.create;
with ini do
try
RootKey := HKEY_CURRENT_USER;
if KeyExists('SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources') then
begin
OpenKeyReadOnly('SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources');
GetValueNames(strings);
end;
result := strings;
finally
ini.Free;
end;
end;
그러나 나는 HKEY_LOCAL_MACHINE로 변경하고 글로벌 시스템의 ODBC 연결을 읽을 수 있어야하지만, 여기에 내가 아무것도 얻을 수 없다.
Wow6432Node
숨겨진 키를 사용하는 32 비트와 64 비트 시스템 사이에 약간의 차이점이 있다고 들었습니다. 그러나 나는 아직도 아무것도 얻지 않는다.
컴파일 된 버전을 32 비트와 64 비트로 분리해야하기 때문에 걱정됩니다.
시스템 및 사용자 ODBC 연결을 얻는 다른 방법이 있습니까?
이 주제는 좋은 것일뿐만 아니라 좋겠지 만 http://stackoverflow.com/questions/7675412/get-the-list-of-odbc-data-source-names-programatically-using-delphi/7676569#7676569 –