Intersystems Cache - начать работу с Callin API
Я хочу разработать клиентский код на C, используя callin API.
Я написал код для подключения к Cache. Однако, когда я вызываю это, я получаю...
Instance is not running
Start status = -1
Я предполагаю, что мне не хватает переменной среды для идентификации моего экземпляра Cache по умолчанию, но я не могу найти ссылку на это в документации по Cache.
У меня есть установка на основе Suse. Я могу начать csession, используя "csession CACHE" в той же оболочке.
Любая помощь?
Код ниже....
static void *
mstart(void) {
int status = 0;
if (! gInitialised) {
CACHE_ASTR prinp, prout, exename;
prinp.len = prout.len = 0;
prinp.str[0] = prout.str[0] = '\0';
strcpy((char *)exename.str, "vavista.cache");
exename.len = strlen((const char *)exename.str);
status = CacheSecureStartA(
NULL, /* User */
NULL, /* Password */
&exename, /* Application Id */
CACHE_PROGMODE | CACHE_TTNEVER, /* Flags */
0, /* timeout */
&prinp, /* Principal input device */
&prout); /* Principal output device */
printf("Start status = %d\n", status);
atexit(mstop);
}
return (void *)1; /* Success */
}
1 ответ
Решение
Вам нужно установить Cache Directory перед запуском... CacheSetDir("/opt/cache/mgr");