Форум программистов, компьютерный форум, киберфорум Visual Studio, VS Code
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.74/39: Рейтинг темы: голосов - 39, средняя оценка - 4.74
0 / 0 / 0
Регистрация: 09.10.2017
Сообщений: 33
VS 2019

Visual Studio не видит .bmp

12.10.2019, 22:47. Показов 7853. Ответов 24

Author24 — интернет-сервис помощи студентам
Уже Довольно сильно подгорело от поисков решения этой проблемы. Может тут кто поможет?
Visual Studio 2019 не видит файлы картинок на диске.
Нажимаю правой кнопкой на Resource Files > Добавить > Ресурс...
Выбираю Bitmap, потом Импорт..., перехожу в папку с нужным изображением в формате .bmp, а он не видит его
Кликните здесь для просмотра всего текста
Visual Studio не видит .bmp
Visual Studio не видит .bmp
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.10.2019, 22:47
Ответы с готовыми решениями:

Visual Studio 2013 не видит Framework 4.0
У меня стоит visual studio 2013 professional. А для создания проекта C++ мне необходима платформа 4 и выше. Я ее установил. Но visual не...

Visual Studio не видит библиотеку Npgsql
Добрый вечер, форумчане. Возникла надобность использовать Npgsql в Visual Studio 2017, скачал и установил интегратор, прописал в PM...

Visual Studio 2010 не видит Framework 4.5
я установил framework 4.5, но когда запускаю свою студию 2010, то в окне с выбором нового проекта, чуть выше в комбобоксе выбор платформы ...

24
фрилансер
 Аватар для Алексей1153
6328 / 5463 / 1108
Регистрация: 11.10.2019
Сообщений: 14,551
12.10.2019, 23:24
vlad697704, может, права доступа к папке ? Студию запусти от имени администратора, увидит файл или нет ?
0
0 / 0 / 0
Регистрация: 09.10.2017
Сообщений: 33
12.10.2019, 23:35  [ТС]
Доступ полный, visual запущен от администратора. При выборе "все форматы файлов"(на 2м скрине) видно же его
0
0 / 0 / 0
Регистрация: 09.10.2017
Сообщений: 33
13.10.2019, 12:52  [ТС]
Походу никто не сталкивался с этим..
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
17890 / 13986 / 5343
Регистрация: 17.03.2014
Сообщений: 28,643
Записей в блоге: 1
13.10.2019, 23:29
vlad697704, может у файла расширение не bmp, а скажем bmр (с русской р)?
0
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
16.02.2020, 22:43
У меня такая же история. Картинки bmp не отображает при попытке добавления ресурса.
Продолжаю поиски решения проблемы. если найду, напишу здесь.
VS2019 64 bit на Windows 10 64 bit
Проект пытаюсь создать DLL Debug х64

Картинка Индексированные цвета.
0
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
18.02.2020, 09:24
Добавлю, что вариант студии:
Microsoft Visual Studio Community 2019
Версия 16.4.5
Бесплатная, зарегистрированная.

В документах Майкрософт прочёл, что ресурсы не использует Express. Не понял, Express и Community - это одно и то же?
Может быть Community в принципе не работает с ресурсами?
Пробовал импортировать другие типы ресурсов, тоже не подключает.

Если кто пояснит, буду благодарен. Если не сможет, то это для информации.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
17890 / 13986 / 5343
Регистрация: 17.03.2014
Сообщений: 28,643
Записей в блоге: 1
18.02.2020, 23:22
Цитата Сообщение от kotgav Посмотреть сообщение
Не понял, Express и Community - это одно и то же?
Это разные редакции. И Community лучше чем Express.
1
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
19.02.2020, 08:52
Спасибо!
Но непонятно всё же, почему же не подключается bmp?
Не могли же в Community полностью отключить эту функцию.
0
 Аватар для Bampo
114 / 82 / 37
Регистрация: 15.02.2020
Сообщений: 206
20.02.2020, 10:09
kotgav, а в свойствах файла случаем нет галочки "скрытый"?
1
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
20.02.2020, 11:06
Bampo, если речь о файле ресурса bmp, то галочки нет, всё нормально.
Вчера получил от Майкрософт ответ на моё обращение по этому глюку. Любезно сообщили, что передано в соответствующую техническую группу для решения этой проблемы.

В том, что это глюк VS2019 Community, всё больше перевожу предположение в убеждение.
Так, в проекте с WinAPI картинку bmp удалось вывести в окно. Но с одним условием.
При подключении ресурса bmp редактор ресурсов файлов не видит, как написал в первом сообщении vlad697704.
Если включить видимость всех форматов и из него выделить нужный bmp файл, то ресурс подключается.
Если указать в функции вывода картинки идентификатор ресурса, например: IDB_BITMAP1, как показано в строчке ниже (закомментирована), то картинка в окно не выводится. При этом никаких оповещений и сообщений не появляется.
Если же вместо идентификатора указать соответствующий номер ресурса 101, как показано во второй строчке, то картинка
в окно выводится и программа работает надёжно:

C++ Скопировано
1
2
3
case WM_CREATE:
//      if ((hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_BITMAP1))) == NULL)
      if (hBitmap = LoadBitmap(GetModuleHandle(NULL), MAKEINTRESOURCEW(101)))
Таким образом, это правило можно взять на вооружение, как временную меру до решения проблемы Майкрософтом.
0
фрилансер
 Аватар для Алексей1153
6328 / 5463 / 1108
Регистрация: 11.10.2019
Сообщений: 14,551
20.02.2020, 11:29
вот так тогда тоже должно сработать (не нужно будет вручную циферку перебивать)
C++ Скопировано
1
2
WORD id=IDB_BITMAP1;
if (hBitmap = LoadBitmap(GetModuleHandle(NULL), MAKEINTRESOURCEW(id)))
--------

кстати, вопрос - проект юникодный или однобайтовый ? Уточни, что именно сработает:

if ((hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCEA(IDB_BITMAP1))) == NULL)
if ((hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCEW(IDB_BITMAP1))) == NULL)

?

хотя, макрос без W и A на конце должен сам автоматически раскрываться в нужный согласно определению макроса UNICODE
1
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
20.02.2020, 12:27
Алексей1153, спасибо, проверю!
Кодировку пробовал и Юникод, и многобайтовую. Про однобайтовый не в курсе. Файлов bmp не видит и так, и так.
Единственное, что не проверял - платформу проекта Win32. Все рассуждения и опыты в платформе Debud х64.

Добавлено через 23 минуты
Цитата Сообщение от Алексей1153 Посмотреть сообщение
кстати, вопрос - проект юникодный или однобайтовый ? Уточни, что именно сработает:

if ((hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCEA(IDB_BITMAP1))) == NULL)
if ((hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCEW(IDB_BITMAP1))) == NULL)
Проверил, результаты такие.
1. Картинка не появляется в обоих вариантах.
Первый вариант показывает ошибку строк в юникоде, ошибка исчезает в многобайтной кодировке.
Второй вариант наоборот, в юникоде.

2. По идентификатору
C++ Скопировано
1
2
WORD id=IDB_BITMAP1;
if (hBitmap = LoadBitmap(GetModuleHandle(NULL), MAKEINTRESOURCEW(id)))
Неудача. Думаю потому, что ресурс с идентификатором не подключается, поэтому и сообщает, что IDB_BITMAP1 не определён.

Вывод - остаётся пока мой вариант с цифровым номером ресурса. Он работает.
0
фрилансер
 Аватар для Алексей1153
6328 / 5463 / 1108
Регистрация: 11.10.2019
Сообщений: 14,551
20.02.2020, 12:37
Цитата Сообщение от kotgav Посмотреть сообщение
поэтому и сообщает, что IDB_BITMAP1 не определён.
на этапе компиляции сообщает? Или при выполнении?
0
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
20.02.2020, 14:02
Нет, сразу в редакторе VS. Т.е. я только помещаю в файл .cpp
WORD id=IDB_BITMAP1;

и тут же красное подчеркивание. Подвожу курсор и читаю, что IDB_BITMAP1 не определён.
0
фрилансер
 Аватар для Алексей1153
6328 / 5463 / 1108
Регистрация: 11.10.2019
Сообщений: 14,551
20.02.2020, 14:11
должно помочь
C++ Скопировано
1
#include "resource.h"
1
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
20.02.2020, 14:48
О, спасибо, Алексей!
Помогло! А я не додумался заголовочный файл ресурсов в файл cpp подключить.

Добавлено через 18 минут
И даже со строчным идентификатором работает, это хорошо!

Работающие варианты, картинка в окно выводится:

C++ Скопировано
1
2
if ((hBitmap = LoadBitmap(GetModuleHandle(NULL), MAKEINTRESOURCEW(id))) == NULL)
if ((hBitmap = LoadBitmap(GetModuleHandle(NULL), MAKEINTRESOURCEW(IDB_BITMAP1))) == NULL)

А вот так не работает. Точнее окно создаётся, но пустое, картинка в него не загружается.

C++ Скопировано
1
if ((hBitmap = LoadBitmap(hInstance, MAKEINTRESOURCE(IDB_BITMAP1))) == NULL)
0
фрилансер
 Аватар для Алексей1153
6328 / 5463 / 1108
Регистрация: 11.10.2019
Сообщений: 14,551
20.02.2020, 14:53
Цитата Сообщение от kotgav Посмотреть сообщение
А вот так не работает.
значит, проект однобайтовый? И, получается, макрос MAKEINTRESOURCEA не работает, как положено

Ну, можно тогда явно пользоваться W-версией и не заморачиваться
1
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
20.02.2020, 16:05
Что я и делаю! Спасибо!
0
3 / 3 / 1
Регистрация: 13.07.2013
Сообщений: 71
12.03.2020, 13:29
Для информации по этой проблеме.

Майкрософт поблагодарил за моё обращение и описание проблемы и посоветовал следить за обновлениями.
Сегодня установил последнее обновление для VS2019, версия 16.4.6.
К сожалению, проблема с ресурсами не устранена.
Даже если я создаю предварительно файл .rc, как написано в документации, а затем пытаюсь подключить ресурс bmp через Импорт, файлы формата bmp программа не видит. Файлы доступны только при включении формата All files или прописыванием их вручную.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
12.03.2020, 13:29
Помогаю со студенческими работами здесь

Visual Studio C++ не видит .NET Framework 3.5
Почему visual studio (несколько версий было, одна и та же проблема) не видит net framework выше 3.5? Из-за этого я не могу создать проект...

DLL в GAC'е есть, а Visual Studio её не видит.
Ситуация такая. Есть у меня одна DLL (стороннего разработчика), которую я использую в другой DLL. И всё шло прекрасно, пока я свою DLL не...

Visual Studio не видит тип и не предлагает варианты после точки
Здравствуйте! Столкнулся с проблемой: Студия не видит тип, т.е. когда я пишу название класса в подсказках он не вылазиет. Но прикол...

Как удалить Visual Studio 2019 Community со всеми рабочими нагрузками если VS Installer ее не видит?
Установил вчера Visual Studio 2019 на диск D, с нагрузками .NET, .NET Core и разработка мобильных приложений, в самой VS скачал файлы для...

Скажите если я напишу программу на C# в MS Visual studio 2012 на framework 3.5 я потом смогу открыть проект моей программы на MS Visual studio 2008
Скажите если я напишу программу на C# в MS Visual studio 2012 на framework 3.5 я потом смогу открыть проект моей программы на MS Visual...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
JavaScript: Управление памятью и улучшение производительности
run.dev 29.03.2025
В отличие от низкоуровневых языков программирования, JavaScript не требует ручного выделения и освобождения памяти. Здесь работает автоматический сборщик мусора, который определяет, какие объекты. . .
Мультитенантная архитектура со SpringBoot и PostgreSQL
ArchitectMsa 29.03.2025
SaaS-приложения редко обслуживают одного клиента и обычно они должны поддерживать множество организаций, каждая из которых работает в своём изолированном пространстве. Мультитенантная архитектура. . .
std::span в C++: Производительность и лучшие практики
NullReferenced 28.03.2025
std::span — одно из самых недооценённых нововведений стандарта C++20, которое радикально меняет подход к работе с непрерывными последовательностями данных. По сути, это невладеющее представление. . .
Многопоточность в C#: Threadpool
UnmanagedCoder 28.03.2025
Пул потоков в C# — это коллекция заранее созданных и готовых к использованию потоков, которые находятся в распоряжении приложения. Вместо того чтобы создавать и уничтожать потоки для каждой небольшой. . .
Вопросы на собеседованиях по микросервисам
ArchitectMsa 27.03.2025
Работодатели ищут не просто разработчиков, знающих базовые концепции, а специалистов, разбирающихся в тонкостях масштабирования, отказоустойчивости и производительности. Сейчас на первый план выходят. . .
Взаимодействие Python с REST API
py-thonny 27.03.2025
REST API - это архитектурный стиль взаимодействия компонентов распределённого приложения в сети. Python располагает функциональным набором инструментов для работы с REST API и основная библиотека для. . .
sshd restrictions, ssh access limitations
jigi33 26.03.2025
sshd restrictions | ssh access limitations рестрикции доступа на сервер sshd статья: https:/ / www. golinuxcloud. com/ restrict-allow-ssh-certain-users-groups-rhel
Компиляция C++ с Clang API
NullReferenced 24.03.2025
Компиляторы обычно воспринимаются как черные ящики, которые превращают исходный код в исполняемые файлы. Мы запускаем компилятор командой в терминале, и вуаля — получаем бинарник. Но что если нужно. . .
Многопоточность в C#: Класс Thread
UnmanagedCoder 24.03.2025
Когда запускается приложение на компьютере, операционная система создаёт для него процесс - виртуальное адресное пространство. В C# этот процесс изначально получает один поток выполнения — главный. . .
SwiftUI Data Flow: Передача данных между представлениями
mobDevWorks 23.03.2025
При первом знакомстве со SwiftUI кажется, что фреймворк предлагает избыточное количество механизмов для передачи данных: @State, @Binding, @StateObject, @ObservedObject, @EnvironmentObject и другие. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru
Выделить код Копировать код Сохранить код Нормальный размер Увеличенный размер