Запустить lotusscript c dll из xpages.

Sanchezz86

Well-Known Member
16.06.2010
72
0
24
Москва
#1
Добрый день!
Не могу понять как решить задачу. Направьте на путь истинный.

Есть у меня Lotusscript библиотека с кодом, в котором подключается библиотеке advapi32.dll для
чтение реестра локальной машины. В клиенте Notes все работает отлично.

Изучаю xpages, и пробую сделать web интерфейс для приложения на xpages. Как мне все это дело запустить с кнопки в xpages? Сдается мне, что все так просто не заработает...:hammer::hammer::hammer:
 

Sanchezz86

Well-Known Member
16.06.2010
72
0
24
Москва
#3
Спасибо.

Жаль. Как-то не хочется все переписывать. Еще раз убеждаюсь,что lotusscript и Lotus Notes - Наше все.
 

alexas1

Well-Known Member
Lotus team
10.04.2014
688
238
#4
Добрый день!
Не могу понять как решить задачу. Направьте на путь истинный.

Есть у меня Lotusscript библиотека с кодом, в котором подключается библиотеке advapi32.dll для
чтение реестра локальной машины. В клиенте Notes все работает отлично.

Изучаю xpages, и пробую сделать web интерфейс для приложения на xpages. Как мне все это дело запустить с кнопки в xpages? Сдается мне, что все так просто не заработает...:hammer::hammer::hammer:
Опа:
<html>
<head>
<title>RegTest</title>
<script language="JavaScript">
function writeInRegistry(sRegEntry, sRegValue)
{
var regpath = "HKEY_LOCAL_MACHINE\\Software\\CompanyName\\CompanyValues\\" + sRegEntry;
var oWSS = new ActiveXObject("WScript.Shell");
oWSS.RegWrite(regpath, sRegValue, "REG_DWORD");
}
function readFromRegistry(sRegEntry)
{
var regpath = "HKEY_LOCAL_MACHINE\\Software\\CompanyName\\CompanyValues\\" + sRegEntry;
var oWSS = new ActiveXObject("WScript.Shell");
return oWSS.RegRead(regpath);
}
function tst()
{
writeInRegistry("Version", "101");
alert(readFromRegistry("Version"));
}
</script>
</head>
<body>
Click here to run test: <input type="button" value="Run" onclick="tst()"
</body>
</html>
Создаём HTA файл и спойлер - в тело.
 
Ошибаетесь - JS и в клиенте - без проблем.
LS библы пущать из xpages - агентом. Это, канеш, временная мера при переводе "старой"аппликухи в вэб.
 
Последнее редактирование модератором:

savl

Well-Known Member
Lotus team
28.10.2011
2 116
157
32
#5
@alexas1, ActiveX слышал, что MS будет отказываться от этой схемы в будущем.
 

alexas1

Well-Known Member
Lotus team
10.04.2014
688
238
#7

Sanchezz86

Well-Known Member
16.06.2010
72
0
24
Москва
#9
Ну дык надо смотреть контекст выполнения скрипта: RunAgent будет на сервере же.
А у меня локально, в справке не совсем понял перевод запуска агента.

For local Notes® client operations, the agent runs in the Notes client on the computer processing the XPage. See runOnServer to do otherwise.
 

alexas1

Well-Known Member
Lotus team
10.04.2014
688
238
#10
Это так кажется. Хоть база может лежать и в клиенте, агент выполняется, как серверный скрипт (SSJS на "локальном" сервере).
... the agent runs in the Notes client on the computer processing the XPage.
- это для хэпаг, запущенных в XPiNC.
Запуск агента - обычный AJAX запрос на сервер (просто он остаётся "за кадром", в случае работы с xpages)
 
Последнее редактирование модератором:

Sanchezz86

Well-Known Member
16.06.2010
72
0
24
Москва
#11
Это так кажется. Хоть база может лежать и в клиенте, агент выполняется, как серверный скрипт (SSJS на "локальном" сервере).
Неправильно выразился, хотел написать, что нужно локально. В этом вся и проблема.
 

alexas1

Well-Known Member
Lotus team
10.04.2014
688
238
#12
Оно понятно.
Агент будет всегда работать "на сервере" (поскольку ажакс), не важно, на нормальном домине или "мини-сервере" клиента.
Поэтому я и предложил кому (что б совсем малой кровью обойтись) с CSJS ( оно в браузере выполняется, те "локально")