Výzva uživatele k zadání informací o připojení

Pokud aplikace používá SQLConnect a potřebuje uživatele vyzvat k zadání jakýchkoli informací o připojení, jako je uživatelské jméno a heslo, musí to udělat sám. Aplikace sice umožňuje řídit svůj vzhled a chování, ale může vynutit, aby aplikace obsahovala kód specifický pro ovladač. K tomu dochází v případě, že aplikace potřebuje vyzvat uživatele k zadání informací o připojení specifických pro ovladač. To představuje nemožné situace pro obecné aplikace, které jsou navrženy pro práci s libovolnými a všemi ovladači, včetně ovladačů, které neexistují při zápisu aplikace.

SQLDriverConnect může uživatele vyzvat k zadání informací o připojení. Například již zmíněný vlastní program by mohl předat následující připojovací řetězec pro SQLDriverConnect:

DSN=XYZ Corp;  

Ovladač pak může zobrazit dialogové okno s výzvou k zadání ID a hesel uživatelů, podobně jako na následujícím obrázku.

Dialogové okno s výzvou k zadání ID uživatelů a hesel

Ovladač, který může vyzvat k zadání informací o připojení, je obzvláště užitečný pro obecné a specifické aplikace. Tyto aplikace by neměly obsahovat informace specifické pro ovladač, a pokud ovladač požádá o potřebné informace, tyto informace zůstávají mimo aplikaci. To je znázorněno předchozími dvěma příklady. Když aplikace předala ovladači pouze název zdroje dat, aplikace neobsahovala žádné informace specifické pro ovladač, a proto nebyla svázaná s konkrétním ovladačem. Když aplikace předala ovladači úplný připojovací řetězec, byl svázán s ovladačem, který by mohl tento řetězec interpretovat.

Obecná aplikace může tento krok dále provést a ani nezadávat zdroj dat. Když SQLDriverConnect obdrží prázdný připojovací řetězec, správce ovladačů zobrazí následující dialogové okno.

Dialogové okno Vybrat zdroj dat

Jakmile uživatel vybere zdroj dat, Správce ovladačů vytvoří připojovací řetězec určující tento zdroj dat a předá ho ovladači. Ovladač pak může uživatele vyzvat k zadání dalších informací, které potřebuje.

Podmínky, za kterých ovladač vyzve uživatele, jsou řízeny příznakem DriverCompletion ; k dispozici jsou možnosti, jak vždy zobrazit výzvu, v případě potřeby zobrazit výzvu nebo nikdy. Úplný popis tohoto příznaku najdete v popisu funkce SQLDriverConnect .