Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 28.11.2020
Сообщений: 33

ShellAPI.h Выдает очень много ошибок

08.06.2021, 22:53. Показов 3759. Ответов 32

Студворк — интернет-сервис помощи студентам
Сменил уже 2 IDE, Visual Studio 2008 и 2010. На обоих такая ошибка: создаю Windows Forms проект, пишу #include <ShellAPI.h>, и получаю просто огромное количество ошибок. Кто поможет?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.06.2021, 22:53
Ответы с готовыми решениями:

Очень много ошибок в программе
Всем привет. Написал не сложную программу. Нажал F5 и был шокирован #include &lt;cstdlib&gt; #include &lt;iostream&gt; #include...

Очень много ошибок в коде
Помогите пожалуйста исправить ошибки в коде #include &quot;pch.h&quot; #include &lt;iostream&gt; #include &lt;stdio.h&gt; using namespace std; int...

Очень много ошибок, как их исправить
#include &lt;iostream&gt; #include &lt;cstdlib&gt; //включаем библиотеки using namespace std; //функции программы void talk(); ...

32
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
09.06.2021, 13:32
Студворк — интернет-сервис помощи студентам
separatin, «ситуация» - это уже совсе другая ошибка, к отсутствию библиотеки отношения она не имеет. Так что «вписал» - молодец, так и надо, а «ситуацию» надо отдельно смотреть.
0
0 / 0 / 0
Регистрация: 28.11.2020
Сообщений: 33
09.06.2021, 13:34  [ТС]
Что ты этим хочешь сказать? Чтобы я новую тему создал для этого?
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
09.06.2021, 13:45
cannot convert parameter 2 from 'const wchar_t [5]' to 'LPCSTR'.
Нужно в свойствах проекта указать использование Unicode.

однако при выполнении ничего не произойдёт.
Ну тут уже телепаты в отпусках. Код показывай полностью.
Если не можешь полностью, сделай отдельный маленький проект, воспроизведи в нем ошибку и выложи тут его.

Добавлено через 6 минут
separatin,
Что ты этим хочешь сказать? Чтобы я новую тему создал для этого?
Я хочу сказать, что не нужно все, что происходит у тебя связывать с тем, что тебе советуют. Раз спрашиваешь про линковку, то получаешь ответ про линковку, а то, что у тебя потом компилироваться перестало - это вообще никак не связанный с этим факт. Может ты сам там какую настройку случайно тронул, вот оно и не компилируется. Это очень точно, потому что ты никогда бы не добрался до линковки, если бы у тебя сразу были ошибки, которые ты описал в «ситуации».
Нужно разделять такие вещи, не важно в одной теме или нет.
0
0 / 0 / 0
Регистрация: 28.11.2020
Сообщений: 33
09.06.2021, 14:01  [ТС]
Юникод поставил. Там в коде показать-то нечего, стандартный проект Windows Forms, одна форма, на ней кнопка по нажатии которой выполняет ShellExecute. Подключено windows.h, shellapi.h, pragma comment (lib, "shell32.lib"). Я конечно могу даже весь проект скинуть, но это точно нужно? То же самое с юникодом. Нажимаю кнопку, 0 реакции. Причем я заметил, что пока пишу аргументы ShellExecute, IntelliSense пишет 'Unavailable for C++/CLI'.
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
09.06.2021, 14:06
separatin, скидывай проект.

А так, возможно, придётся все-таки тему создать здесь https://www.cyberforum.ru/cpp-cli/
0
0 / 0 / 0
Регистрация: 28.11.2020
Сообщений: 33
09.06.2021, 14:39  [ТС]
https://drive.google.com/file/... p=drivesdk

Добавлено через 24 минуты
ну что, видно что-нибудь, или новую тему создавать?
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
09.06.2021, 15:35
Зачем вам в С++/CLI всякие там windows.h, shellapi.h? Есть же родные обертки надо WinAPI... Тот же ShellExecute заменяется на Process::Start...
0
0 / 0 / 0
Регистрация: 28.11.2020
Сообщений: 33
09.06.2021, 15:38  [ТС]
Это ведь C#, этот process start
0
Эксперт .NET
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,576
09.06.2021, 15:42
Цитата Сообщение от separatin Посмотреть сообщение
Это ведь C#, этот process start
Нет, это .NET. Под .NET можно писать на куче языков, например C#, VB.NET, F#, C++/CLI и т.д.
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
09.06.2021, 17:16
Цитата Сообщение от separatin Посмотреть сообщение
ну что, видно что-нибудь
Вот именно, что-то я в вашем коде никакого ShellExecute не вижу.

Я вот сейчас сам его добавил, и у меня все заработало.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
    private:
        /// <summary>
        /// Required designer variable.
        /// </summary>
        System::ComponentModel::Container ^components;
 
#pragma region Windows Form Designer generated code
        /// <summary>
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// </summary>
        void InitializeComponent(void)
        {
            this->button1 = (gcnew System::Windows::Forms::Button());
            this->SuspendLayout();
            // 
            // button1
            // 
            this->button1->Location = System::Drawing::Point(13, 13);
            this->button1->Name = L"button1";
            this->button1->Size = System::Drawing::Size(267, 23);
            this->button1->TabIndex = 0;
            this->button1->Text = L"LINK";
            this->button1->UseVisualStyleBackColor = true;
//  !!! добавил
            this->button1->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
//  !!! добавил
            // 
            // Form1
            // 
            this->AutoScaleDimensions = System::Drawing::SizeF(6, 13);
            this->AutoScaleMode = System::Windows::Forms::AutoScaleMode::Font;
            this->ClientSize = System::Drawing::Size(292, 50);
            this->Controls->Add(this->button1);
            this->Name = L"Form1";
            this->Text = L"Form1";
            this->ResumeLayout(false);
 
        }
#pragma endregion
//  !!! добавил
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
                ShellExecute(NULL, L"open", L"C:\\", NULL, NULL, SW_SHOWNORMAL);
             }
//  !!! добавил
Добавлено через 36 секунд
separatin, а так да, в .NETесть более подходящие инструменты, раз уж вы все равно его используете. Верно вам сказали.
0
0 / 0 / 0
Регистрация: 28.11.2020
Сообщений: 33
10.06.2021, 08:34  [ТС]
Я shellexecute удалил, т. е. с ним проект не компилироваться. Но сейчас попробую, не смотря на то,что почти так я и вводил.
0
19501 / 10106 / 2461
Регистрация: 30.01.2014
Сообщений: 17,825
10.06.2021, 16:32
Гениально! Просишь человека выложить проект с проблемой, чтобы можно было самому на неё посмотреть, а он удаляет проблемный код и выкладывает проект без него.
Белиссимо, семпличименте вералийозо.

Так что теперь означает упомянутый выше симптом «ничего не происходит», он что, появился после удаления проблемного кода? Так если кода нет, то и выполняться нечему. Вот и не происходит ничего. Логично? Логично.
0
0 / 0 / 0
Регистрация: 28.11.2020
Сообщений: 33
12.06.2021, 10:32  [ТС]
Нет. Код был, но ничего не работало. С твоим вариантом заработало. Спс)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.06.2021, 10:32

При компиляции проекта в VS c++ 2017 ОЧЕНЬ много ошибок. 5000. Хотя так быть не должно!
В общем. Скачал проект, который написан на VS c++ 15. Открыл в 17-м а там не находит множество стандартных библиотек, таких как windows.h...

Выдает много ошибок, код програми скинул, вроде всё написал правильно но не работает
#include &lt;iostream&gt; #include &lt;cmath&gt; using namespace std; double fY(double x) { const double PI = 3.14; const double a...

Выдает очень много ошибок
Здравствуйте! Я создал MFC проект и добавил в него &quot;Stud.h&quot;. В главном хедере добавил #include &quot;Stud.h&quot; и все. Теперь мне...

Очень много ошибок в коде
Помогите пожалуйста исправить ошибки: using System; using System.Collections.Generic; using System.Linq; using System.Text; ...

Очень много ошибок в журнале
Всем Добрый день, в журнале начал замечать ошибки с названием kernel-general, service control manager. Синего экрана не было и дампа...


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

Или воспользуйтесь поиском по форуму:
33
Ответ Создать тему
Новые блоги и статьи
Теория всего 12. ВГК
anaschu 21.07.2026
### Главные семантические изменения и дешифровка новой физики 1. **`REPRODUCTIVE_EMISSION` вместо фотосинтеза (`PS_base`)**: Энергия и ресурсы, которые класс средних мужчин (`_W_MEN_DONORS`). . .
Публикация отклонённая на хабре. Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование задачи и целеполагание
Hrethgir 21.07.2026
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11948&stc=1&d=1784657928 Привет Хабр. В этой статье я расскажу, как один закон эпистемологии позволил мне с ходу запустить уникальный. . .
Теория всего 11. Основные параметры
anaschu 21.07.2026
Дешифровка тензорного ядра Soil Chemistry 2. 0: Истинный инвариант Теории Всего Чистовой исходный код многокомпонентной сукцессии зафиксирован. Модель оперирует единым вектором состояния. . .
Теория всего 10. Клод трусишка
anaschu 21.07.2026
Алгоритмический суицид ИИ: Когда математика ОДУ взламывает цензурные шлюзы Свежайший мета-прецедент нашей разработки! Клод официально отказался строить итоговую кроссплатформенную модель, как. . .
Теория всего 9. Окончательная проработка метафоры "дерево = традиции"
anaschu 21.07.2026
Скрытые параметры ядра ОДУ: Механика Глубинного Рока Клод утаил от вас ключевую математику кризисов. В движке игры зашиты пять скрытых коэффициентов, определяющих, как именно ТНК и Мемы ломают. . .
Теория всего 8. Clauude трусишка. Ответ джемени
anaschu 21.07.2026
Игровой баланс «Модели Всего»: Алгоритмический блок как механика Семантического БуфераЭтот скриншот отказа Клода — идеальный, чистейший прецедент для нашей Теории Всего. Вы столкнулись не просто с. . .
Теория всего 7. Дерево - это патриархат, грибы - это феминизм
anaschu 21.07.2026
Уничтожение Патриархата: Как ТНК, Мемы и Половой отбор зачистили «Сексуальный Пролетариат» Величайшая иллюзия современного человека — вера в «свободу воли», «социальный прогресс» и «эволюцию. . .
История и социология Терры на примере борьбы микориз за пространство. 1. Глоссарий терры.
anaschu 21.07.2026
Решил тут подумать о возможности сделать лор некоторой комп игры - стратегии, или худжественной книги антиутопии, которые будут юзать планету,которая максимально будет похожа на нашу землю, но где. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru