bool ServerIsRunning;
IUnknown *Unknown;
HRESULT Result;
AnsiString AppProgID;
Variant App, NS, FLD;
//Указать программный идентификатор приложения-сервера
AppProgID = "Outlook.Application"; //тут навено надо "Access.Application" или чтото в этом духе
ServerIsRunning = false;
Result = GetActiveObject(ProgIDToClassID(AppProgID),NULL,&Unknown);
if (Result == MK_E_NOOBJECT) //Нету Access
{
return false;
}
if (Result == MK_E_UNAVAILABLE) //
{
//Создать один экземпляр сервера
App = CreateOleObject(AppProgID);
}
else
{
//Соединиться с уже запущенной копией сервера
App = GetActiveOleObject(AppProgID);
ServerIsRunning = true;
}
NS = App.OleFunction("GetNamespace","MAPI");//тут надо вызвать другую функцию кoтoрая возвращает версию, вроде она должна быть
if (!ServerIsRunning) App.OleFunction("Quit");
App = Unassigned;
Определить операционку;присутствие Access и ее версии
...собственно сабж. По Access: версии драйверов и т.д. В общем как можно более подробную инфу получить об этих двух объктах страсти :D :D :)
Цитата:
Originally posted by kimN
Уважаемые !
...собственно сабж. По Access: версии драйверов и т.д. В общем как можно более подробную инфу получить об этих двух объктах страсти :D :D :)
Уважаемые !
...собственно сабж. По Access: версии драйверов и т.д. В общем как можно более подробную инфу получить об этих двух объктах страсти :D :D :)
Винды:
http://www.citforum.ru/programming/advice/advice05.shtml
для Access попробуй сделать из этого
Код:
про версии драйверов
можешь прочитать в реестре
см ветки
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\Microsoft Access Driver (*.mdb) поле
DriverODBCVer
HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers