クエリでMSAccessデータベースまたはSQLServerCompact Edition(MSSQL CE)を検出する必要があります。AccessまたはCompactEditionのどちらをクエリしているのかを、クエリ結果で知る必要があります。アプリケーションは、Windows Mobileから実行され、SQL Server Compact Editionを利用する場合もあれば、MSAccessを利用するデスクトップで実行される場合もあります。
ここやここにも記載されているように、データベースファイルの最初のバイトを読み取ることでSQL ServerCompactEditionのバージョンを検出できることはすでに知っています。
また、ここでも説明されているように、SQL2005または2008のサーバーバージョンを検出できることも知っています。
Windowsレジストリをチェックして、特定のキーを探すことができることも知っています。
Windows Mobileで実行されているアプリケーションからクエリを実行しているため、これらのオプションはどれも機能しません。
注:残念ながら、シェルコマンドを実行したり、アプリから外部アプリケーションを呼び出したりすることはできません。
どんな提案でも大歓迎です。