Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« : 22-10-2020 20:22 » |
|
перешёл вот, перетащил старый здоровенный проект на MFC
Мне нравится ) Хороша, чертовка, почти идеальная (но ОЗУ много потребляет. Для моего упомянутого проекта минимум 6 гиг)
Бесплатная, качать с офсайта майкрософта
Кто как и с чем боролся - скидывайте лайфхаки
Вот парочка от меня для затравки
|
|
« Последнее редактирование: 22-10-2020 20:47 от Алексей++ »
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #1 : 22-10-2020 20:23 » |
|
как освободить сожранное озу (естественно, когда не идёт процесс отладки , анализа или компиляции) делаем батник вот с такой аптекой taskkill /F /IM vcpkgsrv.exe /T taskkill /F /IM MSBuild.exe /T taskkill /F /IM ServiceHub.VSDetouredHost.exe /T taskkill /F /IM ServiceHub.SettingsHost.exe /T taskkill /F /IM ServiceHub.IdentityHost.exe /T taskkill /F /IM ServiceHub.Host.CLR.x86.exe /T taskkill /F /IM Microsoft.ServiceHub.Controller.exe /T taskkill /F /IM PerfWatson2.exe /T taskkill /F /IM clang-tidy.exe /T
нажимаем, когда потребовалось (упомянутые выше случаи учитываем)
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #2 : 22-10-2020 20:25 » |
|
в тырнет можно не пускать, однажды залогинившись. Пускать - разве что для закачивания обновлений. В остальное время тупо запретить фаером А пытается туда лезть и сама devenv.exe и весь перечисленный выше зоопарк
|
|
« Последнее редактирование: 22-10-2020 20:32 от Алексей++ »
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #3 : 22-10-2020 20:31 » |
|
"приятно" удивил TRACE/TRACE0 - выводит в консоль кучу пририсованного мусора полный_мать_его_за_ногу_путь_к_файлу(nnnn) : atlTraceGeneral - и только вот тут вывод! лечение нашёл в тырнете (сами майкрософтовцы посоветовали, а я допилил на своё усмотрение) //как отключить atlTraceGeneral - //--------------------в "stdafx.h" дописываем----------------------- #if 1 #ifdef _DEBUG #include <vector> #ifdef ATLTRACE #undef ATLTRACE #undef ATLTRACE2
#define ATLTRACE CustomTrace #define ATLTRACE2 ATLTRACE
inline void CustomTrace(const TCHAR* format, ...) { va_list argptr; va_start(argptr, format); int len=_vsctprintf(format, argptr); if(len<0) { ::OutputDebugString(_T("\r\n**CustomTrace - some error #1 **\r\n")); } else { len++;//место под zt enum{TraceBufferSize = 1024}; if(len>TraceBufferSize) { std::vector<TCHAR> buffer(len,_T('0')); int res=_vstprintf_s(&buffer[0],buffer.size(), format, argptr); if(res<0){::OutputDebugString(_T("\r\n**CustomTrace - some error #2 **\r\n"));} else{::OutputDebugString(&buffer[0]);} } else { TCHAR buffer[TraceBufferSize]={}; int res=_vstprintf_s(buffer,TraceBufferSize, format, argptr); if(res<0){::OutputDebugString(_T("\r\n**CustomTrace - some error #3 **\r\n"));} else{::OutputDebugString(buffer);} } } va_end(argptr); }
inline void CustomTrace(int dwCategory, int line, const TCHAR* format, ...) { va_list argptr; va_start(argptr, format); CustomTrace(format, argptr); va_end(argptr); }
#endif // ATLTRACE #endif // _DEBUG #endif
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #4 : 22-10-2020 20:39 » |
|
Субъективное, по анализаторам кода:
В настройках проекта - Code Analysis отключить Clang-Tidy , оставить только MS анализатор. Clang-Tidy неадекватен в студии для MFC проекта. Кроме того, его вывод в студии - чисто текстовый в output. Жутко неудобно( Также можно отключить пункт Enable Code Analysis on Build - ни к чему, как по мне. Когда нужно - я кнопочку нажму (вывел на панель, чтобы горячие не запоминать)
Для MS анализатора я сначала включил все правила, а по мере необходимости отключил некоторые глобально + можно супрессить отдельные строки в проекте через контекстное меню, если сильно нужно
Ради справедливости - в QtCreator (с mingw) с Qt-шным же проектом Clang-Tidy отлично себя показал
|
|
« Последнее редактирование: 22-10-2020 20:50 от Алексей++ »
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #5 : 22-10-2020 20:42 » |
|
в автосозданной папке .vs копится шоковый объём (гигабайт - только в путь). Как лечить:
В настройках студии (не проекта!) : Enviroment - Text Editor - C/C++ - Advanced - Disable Automatic Precompiled Headers - выставить True
Саму папку можно при выключенной студии удалить, она пересоздастся, но уже намного более скромных размеров
|
|
« Последнее редактирование: 22-10-2020 20:51 от Алексей++ »
|
Записан
|
|
|
|
Ochkarik
|
|
« Ответ #6 : 22-10-2020 22:43 » |
|
Бесплатная, качать с офсайта майкрософта
чем от обычной отличается, окромя лицензии?
|
|
|
Записан
|
RTFM уже хоть раз наконец! :[ ну или хотя бы STFW...
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #7 : 23-10-2020 04:24 » |
|
Ochkarik, ну, хм, для меня - бесплатностью Всё, что можно было делать в ранних студиях, я тут делаю. С гораздо бОльшим комфортом, надо отметить. ОЗУ бы чуток побольше - ищу варианты обновления железа. Пока спасает таблетка из поста №1 Добавлено через 9 минут и 26 секунд:Ochkarik, а главная для меня вкусность - поддержка C++17
|
|
« Последнее редактирование: 23-10-2020 04:34 от Алексей1153 »
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #8 : 23-10-2020 04:43 » |
|
попробовал сейчас насчёт многопоточной сборки - /MP4 от /MP7 по ОЗУ вроде не отличаются
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #9 : 23-10-2020 10:10 » |
|
По нынешнему времени 8 ГБ — уже не прилично. Надо 16, а лучше 32. Видимо потому, что комп с 8 ГБ стоит менее 1000$
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #10 : 23-10-2020 10:18 » |
|
RXL, так ноуту 9 лет жеж. Изначально там было 4 гига, при освоении QtCreator и VirtualBox добавил до 8 гиг - и устраивало до установки студии 2019 Сейчас разбираюсь, возможно ли сделать 16 гиг (всё же 6000р - это не 100000р ) но есть вероятность, что ноут не умеет. Тогда придётся покупать новый
Добавлено через 29 минут и 15 секунд: Рома, кстати, вопрос - для Win7 можно ли между гибернациями планки озу перетыкать? А то тестировать придётся, наверное, несколько раз. Чистое включение и выключение долговатое
|
|
« Последнее редактирование: 23-10-2020 10:47 от Алексей++ »
|
Записан
|
|
|
|
Finch
Спокойный
Администратор
Offline
Пол:
Пролетал мимо
|
|
« Ответ #11 : 23-10-2020 13:15 » |
|
Тут зависит от того, отключает ли ноут питание на плате, кроме дежурки. Подобные манипуляции рекомендуют производить с отключенным питанием и батареей.
|
|
« Последнее редактирование: 23-10-2020 13:17 от Finch »
|
Записан
|
Не будите спашяго дракона. Джаффар (Коша)
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #12 : 23-10-2020 14:01 » |
|
Finch, ну я рисковать не стал, выключил. Диагноз такой: в биос память видится, но сама винда Windows 7 Home Basic (64) , сволочь, имеет ограничение 8 гиг. А обновить для ультимы уже нельзя - семёрка не поддерживается. Переустанавливать на левую не буду, я думаю. Размышляем над приобретением нового ноута, видимо придётся - я чувствую, что 16 гигами дело не ограничится вскоре, а данный ноут больше 16 не потянет. И придётся десятку осваивать
|
|
« Последнее редактирование: 23-10-2020 14:02 от Алексей++ »
|
Записан
|
|
|
|
Ochkarik
|
|
« Ответ #13 : 23-10-2020 14:19 » |
|
Алексей++, у меня знакомый какими то действиями обновлял лицензионные 7ки до 8, потом 8ку до 10тки... или это прикрыли? а потом можно позвонить в майкрософт и сказать что материнка сгорела и перепривяжите к другому компу)
|
|
|
Записан
|
RTFM уже хоть раз наконец! :[ ну или хотя бы STFW...
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #14 : 23-10-2020 14:29 » |
|
Ochkarik, я не знаю, можно ли так сейчас. Но я так делать не буду )
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #15 : 23-10-2020 16:06 » |
|
Если гибернация честная, с записью на диск, есть шанс. Но не знаю, никогда так не делал.
У меня ноут тоже старый, 7 лет. Вот только недавно расширил до 16 ГБ. Слак и браузеры жрут неимоверно.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #16 : 23-10-2020 16:43 » |
|
RXL, запись полюбасу на диск, ведь я и питание отключал, и аккум вытаскивал - после этого всё равно оживает )
|
|
|
Записан
|
|
|
|
Ochkarik
|
|
« Ответ #17 : 23-10-2020 19:38 » |
|
Ochkarik, я не знаю, можно ли так сейчас. Но я так делать не буду )
я имею в виду что так разрешалось майрософтом вроде. ну это к слову.
|
|
|
Записан
|
RTFM уже хоть раз наконец! :[ ну или хотя бы STFW...
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #18 : 11-11-2020 04:45 » |
|
в обсчем, на новом ноуте всё делается мгновенно, довольный, как слон )) Когда запущено всё, что раньше было запущено (вместе со студией) занято 9-10 гиг. Всего на борту сейчас 32 Кое к чему на десятки немного привыкать приходится после семёрки, а в остальном всё ок
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #19 : 11-11-2020 10:29 » |
|
Я еще своп отключаю. Правда теперь винда начнет ругаться, когда к 80% расхода ОЗУ подойдет.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Boriska
Помогающий
Offline
|
|
« Ответ #20 : 21-10-2021 13:44 » |
|
перешёл вот, перетащил старый здоровенный проект на MFC vs19. Проект видимо еще vs6 #include <afxwin.h> // MFC core and standard components не удается открыть источник файл и некоторые другие стандартные тоже. Где студия стандартные вообще ищет ? "#if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #define VC_EXTRALEAN // Exclude rarely-used stuff from Windows headers #include <afxwin.h> // MFC core and standard components #include <afxext.h> // MFC extensions #include <afxdisp.h> // MFC Automation classes #include <afxdtctl.h> // MFC support for Internet Explorer 4 Common Controls #ifndef _AFX_NO_AFXCMN_SUPPORT #include <afxcmn.h> // MFC support for Windows Common Controls"
|
|
« Последнее редактирование: 21-10-2021 14:08 от Boriska »
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #21 : 22-10-2021 12:37 » |
|
Boriska, посмотри тут: верхнее меню tools - get tools and features - отдельные компоненты в окошке поиска введи mfc вот такую выбери, если ещё нету. Потом нажми "скачать всё и установить" (внизу справа у диалога) Добавлено через 3 минуты и 1 секунду:ещё, возможно, в stdafx.h потребуется поменять значения макросов на более новые #ifndef WINVER #define WINVER 0x0601 #endif
#ifndef _WIN32_WINNT #define _WIN32_WINNT 0x0601 #endif
|
mfc.png (40.22 Кб - загружено 591 раз.)
|
« Последнее редактирование: 22-10-2021 12:40 от Алексей1153 »
|
Записан
|
|
|
|
|