![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
Интересная история.
Несколько дней балуюсь созданием .dll на Си, и скармливанием их Delphi. В Delphi написал прогу, где всякие function( ... ).... cdecl; external '... .dll'; Разные IDE для Си пробовал ( в Си я не очень.. ) - Code::Blocks, DevC++, geany, VS Community,VS Express, PellesC . И вот, удалил (с помощью Revo ) Visual Studio Community и Visual Studio Express , а вместе с ними Visual c++ redistributable ( не знаю зачем, видимо чисто по названию ). После этого дельфийская прога перестала запускаться , пишет "Запуск программы невозможен, так как на компьютере отсутствует vcruntime140.dll. Попробуйте переустановить программу." Сама Delphi работает, другие проги от нее все ОК. И даже эта прога для .dll заработала, когда удалил из неё вызов функций.dll , созданных именно Visual Studio Экспресс или Комюнити. Вызовы dll.-функций от других IDE работают. Интересно, ведь сами файлы .dll - с ними ничего не менялось. Возможно, что-то от Delphi оторвалось, и она так стала реагировать на длл именно от Visual Studio. Советы из инета по поводу vcruntime140.dll не помогли . Скачивал-устанавливал Visual c++ redistributable, подсовывал vcruntime140.dll в папку Дельфы/Bin , все то же. Неохота Дельфы переустанавливать , не уверен что поможет. Да и проблема невелика, длл другими IDE вроде можно. Просто интересно. |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
![]()
vcruntime - это значит вы собирали в студии с динамической линковкой. Если у вас dll собрана так, то для ее загрузки и использования нужна будет vcruntime140.
Нужной разрядност/версии? Если и подсовывать, то к требующей dll. |
![]() |
![]() |
![]() |
#3 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
Обеих, ибо комп и ОС у меня 64, а Дельфы старая - 7.
В смысле - в папку с .exe той моей проги для .dll ? Но её же там не было . Вроде, не проверял, там только исходники, файлы проекта. PS Посмотрел, где кроме System32 и SysWOW64 еще живет этот vcruntime140. Смотрел в Program Files и Program Files(x86). Оказалось - в Arduino, AVAST, Mozilla Firefox, Stellarium. Причем разных размеров и времен. PPS Кстати, файл vcruntime140.dll из папки C:\Program Files (x86)\Borland\Delphi7\Bin чудесным образом исчез ! Когда, я и не понял. Я его точно туда копировал из Windows\System32, я проверял. Вставлять пришлось с правами админа. Снова копировать туда не стал. |
![]() |
![]() |
![]() |
#4 | ||
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
![]()
Без разницы. Должно совпадать с разрядностью dll.
Цитата:
Цитата:
К 32битной Delphi копировали 64битную либу? Зачем? |
||
![]() |
![]() |
![]() |
#5 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
А .. да. Меня ввели в заблуждение названия папок. Там же все наоборот.
Скопировал из WOW64, ничего не изменилось. Последний раз редактировалось type_Oleg; 08.11.2021 в 15:26. |
![]() |
![]() |
![]() |
#6 |
Участник клуба
Регистрация: 03.06.2009
Сообщений: 1,869
|
![]()
я бы заморочился и поставил всё в том порядке, как ставил на комп в первый раз.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
|
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
![]()
Вы хотя бы проблемную dll выложили, а то разговор о коне в вакууме.
|
![]() |
![]() |
![]() |
#8 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]()
Которую ? Ту, которую ищет моя программа на Дельфы - vcruntime140.dll ? Так я не знаю какую из них, где она её ищет.
Или те, что создавал в Си, в VS ? А что можно увидеть в .dll, это же что-то вроде .exe, там исполняемый код. Вот, так я описывал функции вызова .dll в Delphi: Код:
И в самом деле, в dll3 ( от VS) есть про vcruntime140, но с буквой D Последний раз редактировалось type_Oleg; 10.11.2021 в 15:39. |
![]() |
![]() |
![]() |
#9 |
Форумчанин
Регистрация: 02.06.2021
Сообщений: 515
|
![]() |
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 02.03.2008
Сообщений: 2,504
|
![]() |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Непонятный глюк textarea, помогите. | Voron20085 | HTML и CSS | 1 | 28.03.2014 10:13 |
Непонятный глюк | luk18 | Microsoft Office Excel | 3 | 01.09.2011 12:50 |
Экспорт в Excel, непонятный глюк. | Kolik317 | Общие вопросы Delphi | 1 | 31.10.2010 19:24 |
Непонятный глюк с отображением прогресбара | Oooleg | Microsoft Office Excel | 7 | 25.02.2010 19:15 |
Непонятный глюк Delphi 2009 | aesoem | Общие вопросы Delphi | 3 | 15.08.2009 12:30 |