Heromant, я в недоумении. 2.6.5 библиотеки Эры различаются настолько незначительно, что маловероятно, чтобы одна запускалась, а другая вылетала. Может быть, в первой папке отключён плагин bug fixes.era или wog native dialogs.era или запуск идёт без HD?
(17.12.2017 22:56)Berserker Wrote: [ -> ]Heromant, я в недоумении. 2.6.5 библиотеки Эры различаются настолько незначительно, что маловероятно, чтобы одна запускалась, а другая вылетала. Может быть, в первой папке отключён плагин bug fixes.era или wog native dialogs.era или запуск идёт без HD?
Да вроде при чистой установке нуля и сегодняшняя версия нормально идёт. Видимо, когда сначала одну, потом другую ставишь фигня какая-то происходит. Либо, что тоже вероятно, если хоть раз запустил без VC++ сборка протухает

Heromant, получается, что наличие файлов msvcr в папке с игрой не помогает, если VC++ Red. не стоит в системе. Буду экспериментировать. А ты ставил Visual C++ для Visual Studio 2013 х86, который 6,5 МБ весит?
(18.12.2017 00:07)Berserker Wrote: [ -> ]Heromant, получается, что наличие файлов msvcr в папке с игрой не помогает, если VC++ Red. не стоит в системе. Буду экспериментировать. А ты ставил Visual C++ для Visual Studio 2013 х86, который 6,5 МБ весит?
6,20 мб., если быть точным. Скачивал непосредственно отсюда
https://www.microsoft.com/ru-RU/download...x?id=40784
Думаю, не всё так просто, и не зря пакет сам по себе существуют. Там же не .net библиотеки то. Их просто подложить мало. Надо, чтобы пути к ним в реестре прописались. Это собственно и делает установщик. Все его и встраивают в собственный установщик, либо по крайней мере в требованиях пишут крупным цветом. Это все равно, что пытаться просто подкладывать dll ядра .net или java машины. Ещё надо внимательно проверять кто какой плагин на какой версии версии VS пилил. Там нет обратной совместимости для VC++. Если есть VC++ 12, 13, 15, 17 - надо ставить все, которые используются. Из всего этого зоопарка, я не проверял только наличие совместимости обратной совместимости 17 с 15 VC++. Во всех остальных ее точно нет, проверял. То есть установив 2013 я тупо угадал. Ну в плане разрядности - там и гадать особо не надо было, НО VC++ x64 НЕ годен для тех случаев где нужен VC++ x86.
HD и Хота построены в MS VC++ 2013, но не требуют никакого VC++ Red.
Чтобы плагины не требовали VC++ Red надо просто в настройках проекта вместо Многопоточный DLL (/MD)
поставить Многопоточная (/MT)
baratorch, вес в итоге будет где-то 1 МБ, если со статически связанными зависимостями?. Но ничего критичного ведь для современного века нет. Думаю, это лучше, чем тащить инсталлятор 2013-2010-... А HD-мод я первым делал проверил и убедился, что скомпилирован с CRT )
Попрошу-таки авторов пересобрать свои плагины с указанным ключом.
Quote:baratorch, вес в итоге будет где-то 1 МБ, если со статически связанными зависимостями?
не обязательно.
хота.длл для хоты 1.5.0 весит 1,5 MB, но в Хоте десятки тысяч строк кода.
экзешник лобби-сервера для хоты например весит 300 кб с /МТ и 100 кб с /MD, в нем 8 тыс. строк кода.
Кстати, еще в настройках проекта MS VC++ нужно выставить
Набор инструментов платформы: Visual Studio 2013 - Windows XP (v120_xp)
а не Visual Studio 2013 (v120)
чтобы dll работала под XP
baratorch, большое спасибо за заметку. Потому как на XP я не тестировал.
(12.12.2017 22:57)Berserker Wrote: [ -> ]Если можно, замени, пожалуйста, OnPandora'sAPIReady на "OnPandoraApiReady".
К слову, а зачем событиям вообще учитывать регистр?
P.S. и только заметил, что не так с апострофом?
Плагин game bug fixes.era, как на новой, так и на старой ЭРЕ отказывается работать. Жалуется на Error at address: $3A0BB39. В логе HD-мода при этом следующее исключение:
Module: era.dll
Adress: 0x03A073F2
Code: EXCEPTION_ACCESS_VIOLATION
Flags: 0x00000000
Information: write of address: 0x00000000
gamecreator, как и идентификаторам в ЯП ) Быстрее и универсальнее, чем реализация карты/словаря с приведением к одному регистру.
XEPOMAHT, а переименуй её в game bug fixes.dll и попробуй ещё раз, если не сложно.
Berserker, кхм...Delphi...кхм... А насчёт апострофа?
(18.12.2017 18:11)Berserker Wrote: [ -> ]переименуй её в game bug fixes.dll и попробуй ещё раз, если не сложно.
После переименования плагин вроде бы заработал, ошибок нет. Только от переименования функционал плагина не теряется?
Нет. dll грузятся до кода инициализации Вога, *.era — после. Очевидно, плагин пишет туда, где ВоГ или Era уже что-то поправили. Может быть, таблицы расширили или перехватчик установили.