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

Ваш аккаунт

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

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

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

проблема с WinApi

52K
07 июля 2010 года
isaer
29 / / 21.06.2010
http://www.progs.biz/winapi/winapi/lessons/001.aspx

visual С++ 2008

пытаюсь сделать и не выходит
в чем проблема

пишет такие ошибки:

error C2440: '=' : cannot convert from 'const char [9]' to 'LPCWSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast

error C2664: 'CreateWindowExW' : cannot convert parameter 2 from 'const char [9]' to 'LPCWSTR'
1> Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast

помогите исправить
33K
08 июля 2010 года
Pro2005
26 / / 01.11.2008
Можно так
Код:
#include <windows.h>
LONG WINAPI WndProc(HWND, UINT, WPARAM,LPARAM);
int WINAPI WinMain(HINSTANCE hInstance,
                   HINSTANCE hPrevInstance,
                   LPSTR     lpCmdLine,
                   int       nCmdShow)
{
    HWND hwnd;
    MSG msg;
    WNDCLASS w;
    char szClassName[] = "MainWidow";
    char szTitle[] = "MyProgramm";
    memset(&w, 0, sizeof(WNDCLASS));
    w.style = CS_HREDRAW | CS_VREDRAW;
    w.lpfnWndProc = WndProc;
    w.hInstance = hInstance;
    w.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);
    w.lpszClassName = [COLOR="#ff0000"]L[/COLOR]"My Class";
    RegisterClass(&w);
    hwnd = CreateWindow([COLOR="Red"]L[/COLOR]"My Class", [COLOR="#ff0000"]L[/COLOR]"MyProgram", WS_OVERLAPPEDWINDOW,
        300, 200, 200, 180, NULL, NULL, hInstance, NULL);
    ShowWindow(hwnd,nCmdShow);
    UpdateWindow(hwnd);
    while(GetMessage(&msg,NULL,0,0))
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }
    return msg.wParam;
}

LONG WINAPI WndProc(HWND hwnd, UINT Message, WPARAM wparam, LPARAM lparam)
{
    switch (Message){
    case WM_DESTROY:
        PostQuitMessage(0);
        break;
    default:
        return DefWindowProc(hwnd, Message, wparam, lparam);
    }
    return 0;
}
14
08 июля 2010 года
Phodopus
3.3K / / 19.06.2008
Можно. А правильнее - вместо
L"sometext"
писать
_T("sometext")
52K
08 июля 2010 года
isaer
29 / / 21.06.2010
Phodopus

поставил вместо L - _T, ошибки вылетели

Pro2005

отлично, работает =)
вот только зачем
Цитата:
char szClassName[] = "MainWidow";
char szTitle[] = "MyProgramm";


я стер и работает. скажи зачем они, или они не надо, или же потом всетаки пригодится

52K
08 июля 2010 года
isaer
29 / / 21.06.2010
вот блин опять похожая ошибка
только теперь я уже не знаю куда засунуть это L
вот нажимаю на ошибку и мне пишет такую строку
Цитата:
if(FAILED(D3DXCreateTextureFromFile(g_pd3dDevice,
d3dxMaterials.pTextureFilename, &pMeshTextures)))
{
pMeshTextures = NULL;
}


куда написать L?? я уже везде перепробовал

52K
08 июля 2010 года
isaer
29 / / 21.06.2010
все решил =)
ток скажите чем отличается
Use Multi-Byte Character Set от Use Unicode Character Set
(я первый поставил и все ошибки исчезои, теперь не надо писать L)
14K
08 июля 2010 года
Fenja
138 / / 20.03.2009
Цитата:
Use Multi-Byte Character Set о


ANSI кодировка

Цитата:
Use Unicode Character Set


Unicode кодировка.
В чем различие - спросишь у гугла.

14
09 июля 2010 года
Phodopus
3.3K / / 19.06.2008
Цитата: isaer

поставил вместо L - _T, ошибки вылетели


пример кода и ошибок в студию

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог