powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как исполнить код COS из приложения .NET?
14 сообщений из 14, страница 1 из 1
Как исполнить код COS из приложения .NET?
    #36564730
ZLOI13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не получается мне оседлать VisM под .NET
Ругается на вот эту фразочку :(
Код: plaintext
1.
2.
            VisM a = new VisM();
            a.Server = "CN_IPTCP:127.0.0.1[57772]:SYS:_SYSTEM";
Server Recive timed out. Может надо сам сервак настроить, где-то галочку поставить или шлюз открыть?!

А я не хочу использовать SQL, мне вот COS подавай :)
Кто-то может сказать, типа зачем в клиенте такие вещи вставлять, но с другой стороны, а зачем SQL в клиенте, если я хочу вызывать методы объектов, название, которых заранее неизвестно, у классов, название которых также неизвестно заранее, а также присваивать значения свойствам. Сомневаюсь, что возможно сформировать чёткую онтологию, поэтому нужен универсальный вариант. Работаю с автокадом, пишу под ObjectArx.Net, поэтому требуется MVS 2005/2008 и .NET соответственно.
Ну что? Кто-нибудь достаточно компетентен, чтобы подсказать? :)
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36564857
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
  var a = new VisM();
  a.Connect("CN_IPTCP:127.0.0.1[57772]:_SYSTEM:@SYS", "mytag");
  a.NameSpace = "SAMPLES";
  try
  {
    a.Execute("set VALUE=$ZVERSION");
    var s = a.VALUE;
    MessageBox.Show(s.ToString());
  }
  finally
  {
    a.DeleteConnection();
  }
Не забудьте настроить сервис %Service_CacheDirect .
Синтаксис строки подключения VisM
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36565055
ZLOI13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servit , что за язык вы используете?
var - Delphi,
{} - не делфи

Или var - это тип какой-то специальный?
В MSDN не нашёл :(

Сервис в админ панели говорит нам о том, что:
%Service_CacheDirect
Вкючён - Да
Публичный -Да
Методы аутентификации - Не аутентифицированный
Описание - Неограниченный
Описание - Управление Cache Direct

Если привести к C#, то на это он ругается точно так же :(
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
        private void button1_Click(object sender, EventArgs e)
        {
            VisM a = new VisM();
            a.Connect("CN_IPTCP:127.0.0.1[57772]:_SYSTEM:@SYS", "mytag");
            a.NameSpace = "USER";
            

        }
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36565130
servit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
C# 3.0 (не путать с версией .NET Framework)
Если включён неаутентифицированный доступ, то логин/пароль в строке подключения указывать необязательно.
Проверьте тот ли порт Вы указываете.
Как я понимаю, 57772 - это порт Вашего встроенного Apache, а нужно указывать порт суперсервера, например, 1972.
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36565254
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
servitЕсли включён неаутентифицированный доступ, то логин/пароль в строке подключения указывать необязательноБолее того, если неаутентифицированный доступ - единственный разрешенный вариант для сервиса, то попытка аутентифицироваться методом "Пароль" неизбежно приведет к ошибке.
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36565283
ZLOI13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
servit , УРА!!!! Работает =D
СУПЕРСКИ!!! Вот что значит свобода!!!
БОЛЬШОЕ СПАСИБО!
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36565304
ZLOI13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov ,
нет, вроде не привело.
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36565317
ZLOI13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov ,
причём можно менять имя и пароль, он просто их игнорит, так что я на будущее оставлю, чтобы не полезло, когда разовью проект (если разовью :)).
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36565515
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZLOI13, согласен, погорячился :) Сказанное (мною :) выше справедливо для любого другого сервиса, кроме CacheDirect. См.:док-я по VisMThe connection string can include the username and password; these are used only if you have enabled the Caché Direct login option. This login option has been rendered obsolete by Caché security and is thus not documented apart from this mention.
Т.е. это совсем не те логин и пароль, которые задаются в Портале. Если включить аутентификацию "Пароль", это приведет к появлению окошка запроса пароля, а логин и пароль в строке коннекта по-прежнему будут игнорироваться.
Мне кое-что известно о том, как включить эту экзотическую опцию "Caché Direct login", но, ИМХО, не актуально это в наши дни :). Повторюсь (уже писал об этом): не используйте Cache Direct в новых разработках, потом захотите "вытравить", а будет никак (или сложно). Тот же функционал можно реализовать, написав универсальный метод класса, который будет eXecut-ить строку, передаваемую вами в параметре (например).
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36565854
ZLOI13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov ,
Alexey Maslov
Тот же функционал можно реализовать, написав универсальный метод класса, который будет eXecut-ить строку, передаваемую вами в параметре (например).

Так вот я пробовал, но не получилось, можете пример?
Чтобы ехекутило строку?
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36566151
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZLOI13, вот грубый шаблон:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Class User.Generic Extends %RegisteredObject [ Not ProcedureBlock ]
{

ClassMethod exec(sCommandLine As %String) As %String
{
		set $zt="error", sRes=""
		xecute sCommandLine
		// поместим результаты в строку
		// (впрочем, это можно сделать и внутри sCommandLine...)
		g exit
error
		set $zt=""
		set sRes=$ze
exit
		quit sRes
}

}
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36566173
Alexey Maslov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[Not Procedureblock] для Xecute не обязательна, это я для общности вставил. Вдруг Job'ы потребуется запускать или сохранять локальную среду между вызовами метода exec.
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36566631
Turk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey MaslovZLOI13, согласен, погорячился :) Сказанное (мною :) выше справедливо для любого другого сервиса, кроме CacheDirect. См.:док-я по VisMThe connection string can include the username and password; these are used only if you have enabled the Caché Direct login option. This login option has been rendered obsolete by Caché security and is thus not documented apart from this mention.
Т.е. это совсем не те логин и пароль, которые задаются в Портале. Если включить аутентификацию "Пароль", это приведет к появлению окошка запроса пароля, а логин и пароль в строке коннекта по-прежнему будут игнорироваться.
Как раз те логин и пароль. Если у вас появляется диалог ввода данных подключения, то значит строка коннекта собрана неправильно. Для подключения к Cache 5.0 я пользуюсь конструкцией "CN_IPTCP:server[port]:username:encryptedPassword", для более поздних версий - "CN_IPTCP:server[port]:slaveserver[port]:username:@password".
...
Рейтинг: 0 / 0
Как исполнить код COS из приложения .NET?
    #36566859
ZLOI13
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Alexey Maslov ,
чтож эмоции прошли, но тоже ура! Это то чего я и хотел собственно =)
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Caché, Ensemble, DeepSee, MiniM, IRIS, GT.M [игнор отключен] [закрыт для гостей] / Как исполнить код COS из приложения .NET?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]