2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




Начать новую тему Ответить на тему
 
 Visual Studio, настройки проекта
Сообщение03.01.2021, 13:00 
Заслуженный участник
Аватара пользователя


03/06/08
2176
МО
Есть программка на C для Win64, компилирую в MS VS, надо избавиться от привязки к библиотеке vcruntime140.dll.
Нашел рекомендацию: нужно установить в настройках проекта Runtime Library = Multi-Threaded (/MT), но я не могу найти, где это :oops:
Кто-нибудь может помочь?
Если что, программа Microsoft Visual Studio Community 2019, Версия 16.8.2.

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение03.01.2021, 13:20 
Заслуженный участник


28/04/09
1933
Контекстное меню проекта → Properties → C/C++ → Code Generation → Runtime Library.

пианист в сообщении #1498748 писал(а):
надо избавиться от привязки к библиотеке vcruntime140.dll
Зачем, если не секрет?

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение03.01.2021, 13:30 
Заслуженный участник
Аватара пользователя


03/06/08
2176
МО
Спасибо, уже нашел.. нЬюанс был в другом месте :))

Програмулька будет запускаться на неведомо каких компах, но с установленной виндой. В частности, вполне возможно, без этой библиотеки.

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение03.01.2021, 14:45 
Заслуженный участник
Аватара пользователя


03/06/08
2176
МО
Рекомендация не помогла ;(
Та же ошибка, нет библиотеки (сори, не vcruntime140.dll, а vcruntime140d.dll).
Так что если кто-то может помочь, буду очень благодарен.
PS На одном из компов спрашивал тж ucrtbased.dll
upd
EtCetera
Пробежался по обсуждениям - похоже, таки да, Вы правы, делать автономное приложение себе дороже, проще к программе прикладывать ссылки на VC, чтобы накатывали себе обновление.

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение03.01.2021, 20:15 


14/01/11
2918
пианист в сообщении #1498769 писал(а):
Та же ошибка, нет библиотеки (сори, не vcruntime140.dll, а vcruntime140d.dll)

Библиотеки, чьё имя оканчивается на "d", обычно относятся к отладочным. Вы точно релизную конфигурацию проекта правили?
Кроме того, что сказал EtCetera, выставьте ещё в дополнительных свойствах конфигурации проекта значение поля "Use of MFC" в "Use MFC in a Static Library", если там стоит "Use MFC as shared dll".

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение04.01.2021, 09:33 
Заслуженный участник
Аватара пользователя


03/06/08
2176
МО
Sender
Йоу! В точку!
Действительно, это отладочная была: я думал, что, перещелкивая в свойствах проекта конфигурацию, я как раз и устанавливаю, отладочная или релиз :oops:
Спасибо!!

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение12.01.2021, 10:34 
Заслуженный участник
Аватара пользователя


03/06/08
2176
МО
Перестала работать функция fopen.
Такое ощущение, что я что-то нечаянно поменял в настройках проекта или VS, но что, не могу понять.
Вот код:
Код:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>


int main()
{
    FILE* outp = fopen("result.txt", "w");
    fprintf(outp, "%d, %d, %d, %d \n", 1, 2, 3, 4);
    fprintf(outp, "%d, %d, %d, %d \n", 5, 6, 7, 8);
    fclose(outp);
}


Экзешник ничего не делает, в том смысле, что файл не создается. Никакой информации об ошибках, в т.ч. в отладчике.
Недавно накатил обновление на Visual Studio, возможно, не стоило этого делать.

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение12.01.2021, 12:52 
Заслуженный участник


28/04/09
1933
пианист
Контекстное меню проекта → Properties → Debugging → Working Directory. По умолчанию там стоит $(ProjectDir), т.е. файл result.txt будет создаваться в той же директории, где лежит Ваш проект (файл *.vcxproj).

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение12.01.2021, 13:41 


14/01/11
2918
И, кстати, в отладчике можно поставить точку останова на
Код:
FILE* outp = fopen("result.txt", "w");

Если outp после выполнения этой строчки будет не NULL, значит, файл таки создался.

-- Вт янв 12, 2021 13:44:02 --

EtCetera в сообщении #1500412 писал(а):
файл result.txt будет создаваться в той же директории, где лежит Ваш проект (файл *.vcxproj).

Как вариант, можно указать полное имя создаваемого файла, включающее путь. Что-то в духе
Код:
FILE* outp = fopen("C:\\mydir\\result.txt", "w");

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение12.01.2021, 20:40 
Заслуженный участник
Аватара пользователя


03/06/08
2176
МО
EtCetera
Спасибо, на эти грабли я уже наступал, и что при отладке приложение файлы кладет/ищет в особом месте, уже уяснил.
Sender
Вроде, не NULL был. Почему вроде - после накатывания второго обновления проблема рассосалась.
MS предлагал два пакета, один я поначалу не стал ставить (типа, мне Live Share без надобности), но тут решил накатить, хуже не будет.
Ну и вот, после установки, даже, точнее, последующей перезагрузки заработало.
Так что я и не знаю, что это было. "Просто глюк в матрице" ;)

 Профиль  
                  
 
 Re: Visual Studio, настройки проекта
Сообщение12.01.2021, 21:09 
Заслуженный участник
Аватара пользователя


22/06/12
2129
/dev/zero

(Оффтоп)

Просто пришло время переустановить ШINDOШS...

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 11 ] 

Модераторы: Karan, Toucan, PAV, maxal, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group