Доброго времени суток, увожаемый All!
Возникла проблема, об которую набиваю себе большую шишку на голове.
Проблема такая :
Есть msi инсталляция, которая вызывает метод из DLL-ки (кустом акшэном).
Этот метод из DLL-ки делает следующие вещи :
MsiDatabaseOpenView(hopenbase,
__T("INSERT into `Property` (`Property`.`Property`, `Property`.`Value`) VALUES('propDummy', 'valDummy')")
,&hview));
//3)Пытается его запустить...
MsiViewExecute(hview,0)
Ну.. в этом случае возвращается код ошибки ERROR_FUNCTION_FAILED
..В общем, полный облом.
Проблема в правах доступа к базе :
//MSDN :
For read-only access to the current database obtain the database handle by calling MsiGetActiveDatabase
Как это можно обойти? Как из кустом акшн процедуры получить доступ для записи в базу???
Если у кого-то есть решения — плиз помогите.
Функция MsiOpenDatabase может получить хендл с доступом на запись... Но не могу представить, как её можно
использовать из кустом-акшн DLL-процедуры?
Извините за такой экспрессивный мессадж... Буду благодарен за любую помощь!