Снегопат
https://snegopat.ru/forum/

Снегопат 2.2.0.x - баги и пожелания.
https://snegopat.ru/forum/viewtopic.php?f=1&t=805
Страница 3 из 7

Автор:  Magister [ 29 июн 2020, 02:23 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

orefkov писал(а):
Ну, такое объявление также добавляет глобальную функцию "Window@ toWindow(uint)".

Спасибо, помогло.
Еще два вопроса.
1) Вот такое объявление:
Код:
:dlls
...
Rect calcShadowRect(void)|?calcShadowRect@BaseWindow@wbase@@QAE?AURect@core@@XZ
Дает ошибку:
Код:
Can't return type 'Rect' by value unless the application type is informed in the registration
Как правильно объявить эту функцию?
2) Вот такое объявление:
Код:
:dlls
...
Size getNCSize(void)|?getNCSize@Window@wbase@@QAE?AUSize@core@@XZ
Срабатывает, но дальше при попытке сделать
Код:
Size sz = wnd.getNCSize()
получаю ошибку
Код:
No appropriate opAssign method found in 'Size' for value assignment
хотя просто обратиться к полям через точку:
Код:
long cy = wnd.getNCSize().cy;
можно без проблем.
Что я делаю не так?

Автор:  orefkov [ 29 июн 2020, 08:56 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

Magister писал(а):
1) Вот такое объявление:
Код:
:dlls
...
Rect calcShadowRect(void)|?calcShadowRect@BaseWindow@wbase@@QAE?AURect@core@@XZ
Дает ошибку:
Код:
Can't return type 'Rect' by value unless the application type is informed in the registration
Как правильно объявить эту функцию?

Тут два пути - либо руками для объектов Rect и Size в AngelScript добавить конструкторы копирования и оператор присваивания, либо спуститься "на уровень ниже":
когда в С++ возвращается объект, на самом деле вызывающий выделяет место под объект, и неявным первым параметром передает адрес выделенного места. А метод возвращает этот же адрес. То есть такое объявление можно переписать так:
Код:
int_ptr calcShadowRect(Rect&)|?calcShadowRect@BaseWindow@wbase@@QAE?AURect@core@@XZ

И вызывать соответственно
Код:
Rect rc;
wnd.calcShadowRect(rc);

Автор:  headmade [ 29 июн 2020, 10:07 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

Работало утро. Но после обновления - появилась ошибка.
Изображение

Автор:  Daimon [ 29 июн 2020, 16:44 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

headmade писал(а):
Работало утро. Но после обновления - появилась ошибка.

+1. Получил аналогичную багу. Также после обновления.
Код:
--- Ошибка ---
Исключение AngelScript.
модуль: Snegopat
секция: v8string__string.v
функция: void v8string__dtor(v8string&inout)
строка: 48
1C version 8.3.13.1865. Snegopat 2.2.0.1 (26.06.2020 16:41)
Exception 0xC0000005 at address 0x73FF656B (KERNEL32.DLL) in call native func InterlockedDecrement
Section: v8string__string.v
Function: void v8string__dtor(v8string&inout)
Line: 48
Callstack:
  v8string__string.v : void v8string__opAssign(v8string&inout, const string&in), line 99,3
  v8string__string.v : void v8string::opAssign(const string&in), line 0,3
  forms.as : uint RuLangSettings::currentLanguage(v8string&inout), line 218,9
  forms.as : uint ActiveScript::run(), line 0,9
Variables:
  obj = native object 'v8string' (0x0019831C)
--- Информация ---
Bad AngelScript result code in callAs

--- Ошибка ---
Исключение AngelScript.
модуль: Snegopat
секция: scriptLoader.as
функция: bool ScriptLoader::run(Addin@)
строка: 203
1C version 8.3.13.1865. Snegopat 2.2.0.1 (26.06.2020 16:41)
Exception 0xC0000005 at address 0x12C7E72F (frame.dll) in call native func ActiveScript::run
Section: scriptLoader.as
Function: bool ScriptLoader::run(Addin@)
Line: 203
Callstack:
  addins.as : Addin@ AddinMgr::loadAddin(const string&inout, AddinGroup@), line 197,9
  addins.as : bool initAddins(), line 22,5
  controls.as : bool generateModalEvent(IFramedView@, int&inout, bool&inout), line 413,9
  controls.as : int doModal1_trap(IBkEndUI&inout, IFramedView&inout, int, int, int, int, int, int, int, int, int), line 472,5
This object at 0x0A0B8288:
  next = script object 'AddinLoader' (0x0A22CCF8)
  mapEngineNames = native object 'NoCaseMap' (0x09F28B58)
Variables:
  addin = script object 'Addin' (0x1B61C658)
  res = 0x09CDF60C
--- Информация ---
Bad AngelScript result code in callAs

--- Ошибка ---
Исключение AngelScript.
модуль: Snegopat
секция: mainframe.as
функция: bool IdleHandler::onIdle(int)
строка: 152
1C version 8.3.13.1865. Snegopat 2.2.0.1 (26.06.2020 16:41)
Exception 0xC0000005 at address 0x68A17713 (jscript.dll) in call native func unloadDelayedScripts
Section: mainframe.as
Function: bool IdleHandler::onIdle(int)
Line: 152
This object at 0x1B3327E0:
  first = false
Variables:
  count = 0
  i = 0x00000002
  im = 0x00000003
  im = 0x00000003
  i = 0x00000002
--- Информация ---
Bad AngelScript result code in ScriptToUnknownWrap::one_func

Автор:  orefkov [ 29 июн 2020, 17:07 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

headmade писал(а):
Работало утро. Но после обновления - появилась ошибка.
Изображение


Вроде исправил, теперь не должно вылетать.

Автор:  headmade [ 29 июн 2020, 17:30 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

Работает. Спасибо

Автор:  orefkov [ 29 июн 2020, 22:22 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

Друзья, чтобы не теряться в потоке багов в одной ветке - я создал отдельный подфорум для баг-репортов.
viewforum.php?f=8

Не стесняйтесь, создавайте по отдельной ветке для каждого бага - тогда они не потеряются и починятся.

Автор:  advali [ 30 июн 2020, 10:12 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

Александр, не работает на форуме кнопка Ваши сообщения

Автор:  nonameforme [ 03 июл 2020, 09:50 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

Огонь! Спасибо Александр. )))
Как раз начал задумываться об удобстве, а тут такое...

Автор:  nonameforme [ 03 июл 2020, 09:52 ]
Заголовок сообщения:  Re: Снегопат 2.2.0.x - баги и пожелания.

Блин, как обновил, все такое знакомое. Аж прослезился )))

Страница 3 из 7 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/