-
Коллеги, здравствуйте!
1. У пользователя есть моя программа: а. Запускается с сети. б. Используют BPL, но без runtime загрузки. в. Во всех моих EXE и BPL есть флаг {$SetPEFlags $0800} // IMAGE_FILE_NET_RUN_FROM_SWAP (через PEViewer проверил - реально он есть!).
2. У пользователей периодически бывает External exception C0000006: а. Ошибки и раньше были. Но до того, как я поставил IMAGE_FILE_NET_RUN_FROM_SWAP их было вообще много. б. Сейчас иногда. Но метко! И бывают они у того пользователя, у которого компьютер имеет меньше, чем у других ОП. в. Понятно, что корень зла - запуск с сети.
3. Поразмышляв над проблемой, подумал - а ведь флаг IMAGE_FILE_NET_RUN_FROM_SWAP в штатных BPL же не стоит! Проверил через PEViewer - действительно, например, в rtl100.bpl, флага нет!
4. Вопрос - были ли у кого-то подобные проблемы и как они были решены? Не прописывать же в бинарник rtl100.bpl нужный флаг!?
Спасибо!
-
> Не прописывать же в бинарник rtl100.bpl нужный флаг!?
Почему?
-
> Styx (07.02.17 17:45) [1] > > Не прописывать же в бинарник rtl100.bpl нужный флаг!? > Почему?
Слишком хирургический метод, думаю. Справится смогу, полагаю. Но лучше уж тогда ланчер написать, чтобы на локальную машину переписывать и оттуда запускать.
-
> 2. У пользователей периодически бывает External exception > C0000006:
Dr Watson надо настроить
-
Что в нём хирургического? Как раз самый официальный. editbin /SWAPRUN:NET|CD rtl100.bpl
-
А можно для тех кто не в теме, но интересуется, рассказать про предполагаемую гипотезу происходящего? Предполагается, что происходит попытка подгрузки части exe-шника, но сеть в это время недоступна? или как?
-
> Игорь Шевченко © (07.02.17 18:55) [3] > Dr Watson надо настроить
Это слишком круто для меня. Никогда не пользовался. Разбираться и разбираться. А ты сам этим пользуешься? Может ликбез какой-то есть почитать?
> Styx (07.02.17 19:24) [4] > Что в нём хирургического? Как раз самый официальный. > editbin /SWAPRUN:NET|CD rtl100.bpl
Спасибо! Похоже, что это плановая хирургия.
> KSergey © (08.02.17 07:43) [5] > А можно для тех кто не в теме, но интересуется, рассказать > про предполагаемую гипотезу происходящего? > Предполагается, что происходит попытка подгрузки части exe- > шника, но сеть в это время недоступна? или как?
Как я это понимаю, то да, все верно.
-
> Styx (07.02.17 19:24) [4] > Что в нём хирургического? Как раз самый официальный. > editbin /SWAPRUN:NET|CD rtl100.bpl
Еще раз благодарю! Единственное, потребовалось заменить на editbin /SWAPRUN:NET /SWAPRUN:CD rtl100.bpl
Там еще и dumpbin есть - заголовки можно смотреть! Через dumpbin как раз проверил: меняет A18E на AD8E.
|