Страница 1 из 2

MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 12:08
chechestor
День добрый. Помогите разобраться.
Есть Visual C++ 2008. Когда пытаюсь вызвать MessageBox, то на этапе линковки матерится вот так:

Код: Выделить всё

error LNK2019: ссылка на неразрешенный внешний символ "extern "C" int __stdcall MessageBoxW(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBoxW@@$$J216YGHPAUHWND__@@PB_W1I@Z) в функции "extern "C" int __clrcall MessageBox(struct HWND__ *,wchar_t const *,wchar_t const *,unsigned int)" (?MessageBox@@$$J0YMHPAUHWND__@@PB_W1I@Z)
Это как вообще понимать-то?!... :confused:
И как это дело исправить?!!...
Заранее благодарен за ответы.

Re: MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 12:31
budulaj88
Выдай код где вызываешь MessageBox

Re: MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 12:47
chechestor
MessageBox(NULL,TEXT("123"),TEXT("123"),0);

Но кроме этого вызова много чего еще пробовал, типа MessageBoxA, MessageBoxW, MessageBox(NULL,(LPCTSTR)"123",(LPCTSTR)"123",0)...

Re: MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 14:33
azrael
Проверьте в настройках проекта, что стоит в параметре "Character Set". Нету под рукой 2008 студии, поэтому не могу точно сказать где он там находится.

Re: MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 14:36
chechestor
Вопрос решился написанием в таком синтаксисе:

Код: Выделить всё

System::Windows::Forms::MessageBox::Show("Process not created");
Странный этот Visual C++...

Спасибо всем ответившим за беспокойство. ;)

Re: MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 16:17
BulldozerBSG
System::Windows::Forms::MessageBox::Show("Process not created"); это же ".net"

Re: MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 16:19
BulldozerBSG
Если используешь .net то зачем тогда пытаешься использовать WinAPI?

Re: MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 16:23
chechestor
BulldozerBSG!
Ничего не знаю, я даже слабого понятия не имею про .NET... Никогда не сталкивался... А сейчас вот решил на Вижуал Си++ сделать окошечное приложение - и просто обалдеваю!!! Ваще все не как у людей устроено!
Вот, пытаюсь сейчас вызвать System: :D iagnostics::Process::Start(System::String)... Банально не могу переконвертировать переменную из char* в этот самый System::String!!!... Посоветуй литературку почитать какую-нить, а?...

Re: MessageBox в Visual C++ 2008

Добавлено: 22 окт 2010, 20:03
BulldozerBSG
Создай новый проект но уже Win32, а не CLR и забудь про System: :D agnostics::Process::Start(System::String)

Re: MessageBox в Visual C++ 2008

Добавлено: 25 окт 2010, 08:34
chechestor
BulldozerBSG... ну, за совет-то, конечно, спасибо, но в Visual C++ проекты Win32 создаются без возможности удобно таркать на форму графические компоненты... Там только белое окно с убогой менюшкой по умолчанию. И что, мне теперь самому изобреать кнопки?...