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");

Другие вопросы по тегам