![]() |
#1 |
----------------
|
DAX2009. Запороть приложение (слой)
В ходе переноса приложения с слоя на слой был изменен один из системных ConfigurationKey (BankExchRate_W). И все было нормально, пока не перезагрузился комп.
АОС больше не стартует вот с таким сообщением: Цитата:
The description for Event ID ( 189 ) in Source ( Dynamics Server 10 ) cannot be found. The local computer may not have the necessary registry information or message DLL files to display messages from a remote computer. You may be able to use the /AUXSOURCE= flag to retrieve this description; see Help and Support for details. The following information is part of the event: Object Server 10: ; BankExchRate_W.
Удаление слоёв GLS, GLP тоже ничего не дало. Как теперь из слоя убрать упоминание этого ключа? |
|
![]() |
#2 |
Участник
|
Восстановить из бэкапа.
Бага-га-га! (Злая шутка) |
|
![]() |
#3 |
Участник
|
Если не ошибаюсь были какие то ключи командной строки для ax32.exe позволявшие запустить аксапту на кривом приложении, игнорируя ошибки, так сказать защищенный режим. Попробуйте поискать. Если получится запуститься то можно просто сделать поиск по аоту и вычистить нафиг все упоминания о ключе.
|
|
![]() |
#4 |
Участник
|
|
|
![]() |
#5 |
Участник
|
Я, помню, на трешке как-то запорол приложение, -repair не помогал. Все законилось тем, что смотрел на ошибки в логах и последовательно добавлял недостающие или сносил лишние поля в Management Studio
|
|
![]() |
#6 |
Участник
|
Цитата:
Сообщение от mazzy
![]() вроде был ключик -repair
Ре-синхронизация системных таблиц на основании AOT Был какой-то ключ для трешки надеюсь в 2009-й его сохранили), который позволял стартовать в кривыми системными объектами (info, application и т.п.) Ну а если удалось стартовать то можно вычистить Utilelements и.т.п. |
|
![]() |
#7 |
NavAx
|
Попробуй поиграться с табличкой SysConfig, сведения о ключах там.
|
|
![]() |
#8 |
----------------
|
AOS падает на построении индексов (или сразу после), но точно ДО коннекта к базе.
--------- возможно, это фича защиты от взлома. Но кому теперь докажешь, что менял не по злому умыслу. Последний раз редактировалось Wamr; 19.04.2011 в 22:33. |
|
![]() |
#9 |
Moderator
|
Еще можно попробовать стартовать AOS с параметрами lazyclassloading и lazytableloading.Они, вроде бы, позволяют стартовать AOS с сильно побитым слоем (сам не пробовал, читал во внутреннем DL, когда в Микрософте работал).
Правда есть нехорошее чуство, что их в версии 2009 убрали. |
|
|
За это сообщение автора поблагодарили: Logger (3). |
![]() |
#10 |
Axapta
|
Не, вроде не убрали. Я в блоге EMEADAXSupport читал про эти ключи при загрузки xpo-шников. Вот, нашел запись:
http://blogs.msdn.com/b/emeadaxsuppo...-possible.aspx |
|
|
За это сообщение автора поблагодарили: Logger (3). |
![]() |
#11 |
Участник
|
Можно еще попробовать "битое" приложение положить в old, а вместо него поднять последнюю резервную копию и сравнением выцепить недостающие изменения - я так понимаю, "спасти" требуется именно их. Может, на old-приложении "защита от взлома" в АОСе не сработает.
PS. А еще можно - на совсем крайний случай - запустить АОС под отладчиком, поставить точку останова на функции записи сообщения в eventlog, по стеку вызовов найти место, где он решает, что не будет запускаться, и попробовать его "обмануть". Последний раз редактировалось gl00mie; 20.04.2011 в 02:02. |
|
|
За это сообщение автора поблагодарили: titov (1). |
![]() |
#12 |
Участник
|
Цитата:
Например есть ли аналогичные -lazyXXXloading для других веток АОТ, например, для форм и отчетов? И что конкретно делает этот ключ? Он откладывает загрузку в память клиента узлов АОТ при старте и делает это по мере необходимости позднее ? Есть где-нибудь более подробное описание ? |
|
![]() |
#13 |
Moderator
|
Цитата:
Сообщение от Logger
![]() Интересно, а есть где-нить полное описание этих ключей командной строки.
Например есть ли аналогичные -lazyXXXloading для других веток АОТ, например, для форм и отчетов? И что конкретно делает этот ключ? Он откладывает загрузку в память клиента узлов АОТ при старте и делает это по мере необходимости позднее ? Есть где-нибудь более подробное описание ? |
|
![]() |
#14 |
Участник
|
gl00mie прав на все 100% - в old защита от взлома отключена (проверено ах2009 ru5). Более того, если потом из old перенести в рабочую папку *.aod, axapd.aoi, то AOS стартует... до следующей реиндексации приложения.
|
|
|
За это сообщение автора поблагодарили: gl00mie (1). |
![]() |
#15 |
Модератор
|
![]() Цитата:
есть скрипты интересные (возможно помогут восстановить): Цитата:
@rem 11.0 Synchronize the Application Database
@rem 13.0 Compile the Application
__________________
This posting is provided "AS IS" with no warranties, and confers no rights. |
|
|
За это сообщение автора поблагодарили: Logger (3). |
![]() |
#16 |
Участник
|
Спасибо за ссылку.
Но все-таки там не описано зачем они нужны и как работают. Просто приведен пример скриптов. Кстати, ключ -minimize походу не работает. Окошко все равно открывается и получает фокус. |
|
![]() |
#17 |
----------------
|
Всем спасибо за варианты, много интересного рассказали.
Напомню, что проблема на стадии запуска ax32serv, так что ключи и скрипты для ax32 никак не помогут. Цитата:
Object Server 10: Configuration error. Illegal option specified: -lazyclassloading
Скопировал слой в приложение ax4... АОС запустился, клиент ax4 долго ругался, но до AOT допустил, где я радостно и грохнул перекрытые (2) конфигурационных ключика. Измененный слой вернул (не забыв остановить АОС4) в "родное" приложение, где он теперь успешно работает. |
|
![]() |
#18 |
Участник
|
Может быть кому-то поможет. Есть еще один способ исправления ситуации "запоротого" слоя, когда не стартует АОС. Если вы поломали не самый верхний слой (usp) или у вас вообще нету этого слоя, то можно взять чистое приложение с этим usp слоем, подправить место поломки (например конфигурационный ключ) и закинуть полученный верхний слой в ваше проблемное приложение. Приложение стартанет, проблемный слой поправите, с верхнего слоя изменения удалите.
Например у нас разработка ведется на cus. Случайно запороли класс Application, АОС не стартует. Берем чистое приложение (или бэкап нашего), загружаемся на usp, сохранем на слое правильную версию Application, АОС стартует. Исправляем на cus ошибку, usp удаляем вообще. |
|
![]() |
#19 |
----------------
|
Masel, для конфигурационных ключей это не работает.
|
|
![]() |
#20 |
Участник
|
Да, может быть конкретно для ключей не сработает. Для этого случая не пробовал.
Когда с ключами была проблема, то вариант titov подошел. |
|
Теги |
aod, crash, startup command, баг, полезное, структура aod |
|
![]() |
||||
Тема | Ответов | |||
DAX2009 не дружит с VS2010 | 2 | |||
Несколько АОСов и одно приложение | 4 | |||
Пропал VAR слой | 6 | |||
Вопросы по OLAP в DAX2009 | 9 | |||
"Падающий" вниз слой ? | 3 |
|