никто не сталкивался с такой ситуацией:
в проекте есть строки вызова внешних процедур из длл типа
procedure ext_proc; stdcall; external 'ext.dll';
хотел сделать загрузку "на выбор" в зависимости от ос, типа вот так
procedure ext_proc; stdcall; external {$IFDEF MSWINDOWS} 'ext.dll' {$ELSE} 'path\'ext.dll'' {$ENDIF};
после компиляции экзешник просто не запускается, нет никаких ошибок, никаких сообщений - ничего, как будто его не запускают)
после возврата текста в исходное состояни (все работало) - косяк остался, экзешник так и не запускается....
пробовал компилировать на двух разных машинах - не помогло
пробовал переустановить лазарус - не помогло.
куда копать?
после компиляции не запускается экзешник
Модератор: Модераторы
dimds
Не могли бы Вы разъяснить поподробнее вот эту сентенцию:
и
Какой именно экзешник не запускается - откомпилированной Вами программы? Как тогда понять строку, что "всё работало"? Когда работало? Или, до каких Ваших действий работало? И что именно работало?
Не могли бы Вы разъяснить поподробнее вот эту сентенцию:
dimds писал(а):после возврата текста в исходное состояни (все работало)
и
dimds писал(а):косяк остался, экзешник так и не запускается
Какой именно экзешник не запускается - откомпилированной Вами программы? Как тогда понять строку, что "всё работало"? Когда работало? Или, до каких Ваших действий работало? И что именно работало?
всё работало - до внесения этих изменений procedure ext_proc; stdcall; external {$IFDEF MSWINDOWS} 'ext.dll' {$ELSE} 'path\'ext.dll'' {$ENDIF};.
т.е. когда скомпилированный экзешник перестал работать - вернул код в проекте в исходное состояние, но это не помогло, после компиляции проекта СО СТАРЫМ ИСХОДНЫМ КОДОМ (рабочим) ситуция не изменилась - скомпилированный экзе не запускается.
т.е. когда скомпилированный экзешник перестал работать - вернул код в проекте в исходное состояние, но это не помогло, после компиляции проекта СО СТАРЫМ ИСХОДНЫМ КОДОМ (рабочим) ситуция не изменилась - скомпилированный экзе не запускается.
Тогда надо внимательно проштудировать код - если раньше работало, а сейчас нет, значит код не идентичен тому что было.
Или, как альтернатива, условия на Вашем компьютере кардинально поменялись...
Добавлено спустя 2 минуты 24 секунды:
А Вы экзешник запускаете из Lazarus или при закрытом Lazarus'е?
Или, как альтернатива, условия на Вашем компьютере кардинально поменялись...
Добавлено спустя 2 минуты 24 секунды:
А Вы экзешник запускаете из Lazarus или при закрытом Lazarus'е?
не исключено, но среди видимых символов изменений не вижу)))
более того. уже вручную переписал полностью тот кусок.
подобное как то раз уже было, и именно также на подключении внешних библиотек, но это было в начале проекта - переписал текст и все заработало.
сейчас же засада куда то глубже залезла....
вот только куда?????
более того. уже вручную переписал полностью тот кусок.
подобное как то раз уже было, и именно также на подключении внешних библиотек, но это было в начале проекта - переписал текст и все заработало.
сейчас же засада куда то глубже залезла....
вот только куда?????
dimds
Вряд ли можно дистанционно сказать диагноз.
Выкладывайте сда код проекта и длл-ку. Попробую у себя скомпилировать и посмотреть, что получится...
Вряд ли можно дистанционно сказать диагноз.
да дело не в дллке 100%
странно почему никаких ошибок не выдает.
проблема еще в том, что экзешник под винце, и проверять его приходится в эмуляторе....
Добавлено спустя 3 минуты 46 секунд:
смешно, но проблема оказалась совсем не там где искал!
в другом юните, при вызове процедуры совершенно из другой длл, причем этот код в принципе не выполняется при прогоне программы....
странно почему никаких ошибок не выдает.
проблема еще в том, что экзешник под винце, и проверять его приходится в эмуляторе....
Добавлено спустя 3 минуты 46 секунд:
смешно, но проблема оказалась совсем не там где искал!
в другом юните, при вызове процедуры совершенно из другой длл, причем этот код в принципе не выполняется при прогоне программы....
