Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

MessageBox, как правильно прописать?

5.3K
06 сентября 2006 года
!Волк
95 / / 19.07.2006
написал в обработчике щелчка кнопочки это:
 
Код:
private: System::Void button9_Click(System::Object^  sender, System::EventArgs^  e)
         {
         Messagebox(0, "fucking", "fucking",MB_OK );
         }

А он мне 'MesageBox': Identifier not found.
Чего ему еще не хватает?:confused:
9.5K
06 сентября 2006 года
ROLpogo
80 / / 22.08.2006
Так Messagebox или MesageBox?

Вообще-то нужно писать MessageBox
5.3K
06 сентября 2006 года
!Волк
95 / / 19.07.2006
А черт, пошел очки менять.
Исправил, тока теперь 3, две из которых одинаковые:
1. 'MessageBox' : ambiguous symbol
2. 'MessageBox' : ambiguous symbol
3. 'MessageBox' : cannot convert parameter 2 from 'char *' to 'LPCTSTR'
:confused:
9.5K
06 сентября 2006 года
ROLpogo
80 / / 22.08.2006
MessageBox(_T("fucking"), _T("fucking"),MB_OK );
5.3K
06 сентября 2006 года
!Волк
95 / / 19.07.2006
Не катит.:(

Вон че пишет:
1. Error 11 error C2872: 'MessageBox' : ambiguous symbol
2. Error 12 error C2872: 'MessageBox' : ambiguous symbol
3. Error 13 error C3861: '_T': identifier not found
4. Error 14 error C3861: '_T': identifier not found
5.3K
06 сентября 2006 года
!Волк
95 / / 19.07.2006
Ну помогите кто нибудь. Очень нужно. Своими силами не получается. Опыта мало.((
Тут стока проффессиональных программистов и никто не знает в чем может быть проблема???
17K
07 сентября 2006 года
_ZaliZo
21 / / 18.08.2006
Ну если он так не хочет работать с тобой, то иди обходными путями:
 
Код:
LPCTSTR msg="text";
MessageBox(0,msg,msg,MB_OK);
332
07 сентября 2006 года
Valiant
416 / / 27.09.2004
вообщето в MFC есть такая функция как
AfxMessageBox()
если у тебя приложение Windows Forms
то юзай так
::System::Windows::Forms::MessageBox::Show("lol") ;
и ещё MSDN отличная штука почитай
398
07 сентября 2006 года
Alexandoros
630 / / 21.10.2005
[QUOTE=!Волк]написал в обработчике щелчка кнопочки это:
...[/QUOTE]

Чугак, ты не по адресу, тебе сюда http://forum.codenet.ru/forumdisplay.php?f=28
5.3K
07 сентября 2006 года
!Волк
95 / / 19.07.2006
[QUOTE=_ZaliZo]Ну если он так не хочет работать с тобой, то иди обходными путями:
 
Код:
LPCTSTR msg="text";
MessageBox(0,msg,msg,MB_OK);
[/QUOTE]
Улыбнуло. :D
Все равно пишет не может чар в этот тип перевести. Не понятно, как такое ваще может быть. Видимо, ошибка в другом, а это дополнительный побочный эффект.(



[QUOTE=Valiant]вообщето в MFC есть такая функция как
AfxMessageBox()
если у тебя приложение Windows Forms
то юзай так
::System::Windows::Forms::MessageBox::Show("lol") ;
и ещё MSDN отличная штука почитай[/QUOTE]
Второй вариант ЗАРАБОТАЛ.)) Большое спасибо. Первый еще не пробовал.
А теперь обьясни, как так получается, что перед двоеточием ничего ставить не надо.) Или компилятор автоматически подставляет туда класс формы или как?)

[QUOTE=Alexandoros]Чугак, ты не по адресу, тебе сюда http://forum.codenet.ru/forumdisplay.php?f=28[/QUOTE]
Эмм, ваще не понял че там за темы. Спасибо, что попытался помочь.:D


Вообщем, всем спасибо , всем щас добавлю репки.:cool:
240
07 сентября 2006 года
aks
2.5K / / 14.07.2006
[QUOTE=!Волк]
Эмм, ваще не понял че там за темы. Спасибо, что попытался помочь.:D
[/QUOTE]
Ну дело в том, что ты пишешь не на С++, а на managed C++ под .Net Framework.
А это обсуждается там. Непонятности возникают просто из-за немного неграмотного расположения и названия разделов.
5.3K
07 сентября 2006 года
!Волк
95 / / 19.07.2006
[QUOTE=aks]Ну дело в том, что ты пишешь не на С++, а на managed C++ под .Framework.
А это обсуждается там. Непонятности возникают просто из-за немного неграмотного расположения и названия разделов.[/QUOTE]
Дак в этой оболочке тока так и можно программировать, или нет? Зачем тогда этот раздел.:confused:
398
07 сентября 2006 года
Alexandoros
630 / / 21.10.2005
[QUOTE=!Волк]Дак в этой оболочке тока так и можно программировать, или нет? Зачем тогда этот раздел.:confused:[/QUOTE]

Волк, аааааа, убил, пипец, патсулом, красавец, бля, я так не ржал на работе уже наверное месяцев с 5, когда про выгул собачки в пьяном состоянии читал. Порадовал, спасибо.

Но если пишеш на манаджед - тебе по ссылке, которую я дал. Здесь, как ни странно, пишут на "чистом" с/с++
240
07 сентября 2006 года
aks
2.5K / / 14.07.2006
В "этой оболочке" изначально и всегда писали на C++ и досих пор она и есть С++ компилятор. С появлением .Net появилась возможность писать и на managed C++, но это паралельная возможность никак не затронувшая первоночальную. =)
Все таки .Net лучше действительно обсуждать в том разделе, ибо здесь и правда обычно С/С++ обсуждают.
А вобще по хорошему было бы - еслиб существовал раздел C/C++ например а внутри уже подразделы и просто для вопросов не связанных с каким то конкретным IDE, и подразделы для MSVC, C Builder, если кому то необходимо именно их обсуждать, и там может другие компиляторы.
Тогда бы и вопросов таких не возникало.
А в .Net бы обсуждались его языки.
5.3K
07 сентября 2006 года
!Волк
95 / / 19.07.2006
Блин, я ваще запутался. Ну я типа Фрамеворк ваш вообще не знаю, что такое. Поэтому и сказал не то. Думал-понял по смыслу. Ну типа, тогда вопрос такой, как мне сделать чтоб вылазило окно с определенным сообщением средствами С++. Если я printf("fucking"); или cout<<"fucking"; напишу, ничего ведь не вылезет.?((

И второй вопрос. Раз уж сдесь тему создал, то дублировать ее не буду.)
Короче, я ваще в шоке, как
так.? Эта строчка работает.
 
Код:
::System::Windows::Forms::MessageBox::Show("fucking");

А эта уже нет.((((((( :
 
Код:
char *s="fucking";
::System::Windows::Forms::MessageBox::Show(s);


Ведь это одно и тоже.(((

Плииз. Разьясьните.

Кстате, на всякий случай, я работаю в СLR приложении. Поддержка MFC включена, вроде).
240
07 сентября 2006 года
aks
2.5K / / 14.07.2006
То что у тебя СLR приложение - это и значит, что ты работаешь с .Net Framework =))
Если хочешь использовать обычный C++, придется пересоздать проект - и создать скажем проект для обычного win32 приложения.
Если тебе нужен MessgaeBox в обычном с++ - пожалйста: ::MessageBox(NULL, "text", "title", MB_OK);

Цитата:

Ведь это одно и тоже.(((

Плииз. Разьясьните.


Нет в данном случае уже не одно и тоже. =))

332
07 сентября 2006 года
Valiant
416 / / 27.09.2004
Так сначала разберись что тебе надо ...
какой проект ты создаешь ???
какие либы подключаешь ???
какие пространства имён используешь ???
а вообще сначала покури что то в духе MFC,
а ещё лучше начни с голого С++
332
07 сентября 2006 года
Valiant
416 / / 27.09.2004
кстати приложения типа "Привет Мир!!!"
никто не отменял и они наилучшим образом учат
5.3K
07 сентября 2006 года
!Волк
95 / / 19.07.2006
Блин, ну вы меня ваще обрадывали. Тоесть, я так понял, С++ не поддерживается в таких типах приложений. Ну ваще пипец. Тогда такой вопрос. Переделывать мне нету времени, да и не стоит того. Все что мне осталось сделать, это заставить приложение послать сообщение. Есть способ это сделать?)
Ну вот есть строка:
 
Код:
char *str="Привет мир";


и есть например MFC вариант Message Box
 
Код:
::System::Windows::Forms::MessageBox::Show("Привет мир");


все работает. А как сделать чтоб строку в MessageBox можно было изменять, ну вот так вот
 
Код:
char *str="Привет мир";
::System::Windows::Forms::MessageBox::Show(str);

, тока это не работает, а как сделать чтоб работало. Больше мне ничего не нада)

Любой другой вариант посыла строки типа чар меня тоже устроит.
398
07 сентября 2006 года
Alexandoros
630 / / 21.10.2005
Когда создаеш проект - выбери "win32/win32 console project"

И все будет работать, и cout<<, i printf , i MessageBox
5.3K
07 сентября 2006 года
!Волк
95 / / 19.07.2006
[QUOTE=Alexandoros]Когда создаеш проект - выбери "win32/win32 console project"

И все будет работать, и cout<<, i printf , i MessageBox[/QUOTE]
Да не могу я вернуться. Есть причины. Да иосталось тока сообщение послать любым способом и все.
533
09 сентября 2006 года
Visualex
254 / / 07.01.2005
Тогда тебе поможет ручка и листок бумаги!
66K
13 декабря 2010 года
ghost:
1 / / 13.12.2010
Цитата: !Волк
написал в обработчике щелчка кнопочки это:
 
Код:
private: System::Void button9_Click(System::Object^  sender, System::EventArgs^  e)
         {
         Messagebox(0, "fucking", "fucking",MB_OK );
         }

А он мне 'MesageBox': Identifier not found.
Чего ему еще не хватает?:confused:



Identifier not found - это скорей всего дескриптор родительского окошка, попробуй NULL

Цитата: !Волк
А черт, пошел очки менять.
Исправил, тока теперь 3, две из которых одинаковые:
1. 'MessageBox' : ambiguous symbol
2. 'MessageBox' : ambiguous symbol
3. 'MessageBox' : cannot convert parameter 2 from 'char *' to 'LPCTSTR'
:confused:



делай так и не совокупляй мозг:
Messagebox(0, LPCWSTR("fucking"), LPCWSTR("fucking"),MB_OK );

278
03 января 2011 года
Alexander92
1.1K / / 04.08.2008
Проблема действительно в том, что ты пишешь под Managed C++. Поэтому:

1. Если нужно вызвать функцию MessageBox из WinAPI, тогда это
::MessageBox(NULL, (LPCTSTR)"Text", (LPCTSTR)"Title", MB_OK);

2. Если нужно вызвать MessageBox из .NET Framework, тогда это действительно
System::Windows::Forms::MessageBox::Show("Text");

Первая функция принимает на вход строку типа char *, а вторая - строку типа System::String. Отсюда и проблемы. =)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог