Ответить
06.07.2011, 16:50 #1
Ветеран
Avatar
Регистрация: 10.02.2011
Сообщений: 445
Карма: 7
SDL и C::B
Всем доброго времени суток.
Не получается создать проект SDL в C::B. Я скачал от сюда http://www.libsdl.org/download-1.2.phpвот это http://www.libsdl.org/release/SDL-devel-1.2.14-mingw32.tar.gz. Распоковал архив папку инклуде положил в папку унклуде C::B, содержимое папки либ положил в папку либ кодеблокса. Всё это описано вот здесь http://dimanche.ucoz.ru/publ/1-1-0-31. Ни чего не получилось нажал создать СДЛ проджект. Вылезло окно- "Please select SDL's location:" и в строке надпись "$(#sdl)", чего тут указывать надо не понял.
Если просто нажать"NEXT", вылазит окно- "Global Variable Editor". Здесь предлагается указать "base", "include", "lib" и "obj". Где находится base и obj, не нашел.
:dry: Вобщем на этом дело, у меня, заглохло. Подскажите может я что не так делаю?:S
Реклама
06.07.2011, 22:33 #2
Завсегдатай
Avatar
Регистрация: 24.02.2011
Сообщений: 128
Карма: 3
Re: SDL и C::B
На obj забей, а base - это локация непосредственно плагина
07.07.2011, 00:06 #3
Ветеран
Avatar
Регистрация: 10.02.2011
Сообщений: 445
Карма: 7
Re: SDL и C::B
А что там указывать надо?
07.07.2011, 01:45 #4
Ветеран
Avatar
Регистрация: 16.02.2011
Сообщений: 455
Карма: 21
Re: SDL и C::B
А я еще SDL.dll сувал в папку System 32, на том сайте об этом написано. Вы так сделали?
07.07.2011, 03:00 #5
Ветеран
Avatar
Регистрация: 10.02.2011
Сообщений: 445
Карма: 7
Re: SDL и C::B
Алексей писал(а):
А я еще SDL.dll сувал в папку System 32, на том сайте об этом написано. Вы так сделали?

Да я тоже так сделал. Хотя на этом-же сайте, но в другой статье, не рекомендуется так делать. Лучше не засорять эту папку.
07.07.2011, 03:06 #6
Ветеран
Avatar
Регистрация: 16.02.2011
Сообщений: 455
Карма: 21
Re: SDL и C::B
Ну тогда этот файл придется в каждый проект пихать, тоже не очень удобно
А если попробовать виндоус-проект создать?
07.07.2011, 04:51 #7
Ветеран
Avatar
Регистрация: 10.02.2011
Сообщений: 445
Карма: 7
Re: SDL и C::B
На сколько я помню виндовс проект создается без всяких надстроек C::B, попаду домой, уточню.
Но хотелось SDL проект создать
07.07.2011, 04:55 #8
Ветеран
Avatar
Регистрация: 16.02.2011
Сообщений: 455
Карма: 21
Re: SDL и C::B
У меня в Студии нет СДЛ - проекта, создаю Виндоус- проект, и вроде все работает
07.07.2011, 15:45 #9
Ветеран
Avatar
Регистрация: 10.02.2011
Сообщений: 445
Карма: 7
Re: SDL и C::B
Да прорэкт WIN 32 получается без всяких надстрек. И там листинг:
#include <windows.h>

/*  Declare Windows procedure  */
LRESULT CALLBACK WindowProcedure (HWND, UINT, WPARAM, LPARAM);

/*  Make the class name into a global variable  */
char szClassName[ ] = "CodeBlocksWindowsApp";

int WINAPI WinMain (HINSTANCE hThisInstance,
                HINSTANCE hPrevInstance,
                LPSTR lpszArgument,
                int nCmdShow)
{
HWND hwnd;               /* This is the handle for our window */
MSG messages;            /* Here messages to the application are saved */
WNDCLASSEX wincl;        /* Data structure for the windowclass */

/* The Window structure */
wincl.hInstance = hThisInstance;
wincl.lpszClassName = szClassName;
wincl.lpfnWndProc = WindowProcedure;      /* This function is called by windows */
wincl.style = CS_DBLCLKS;                 /* Catch double-clicks */
wincl.cbSize = sizeof (WNDCLASSEX);

/* Use default icon and mouse-pointer */
wincl.hIcon = LoadIcon (NULL, IDI_APPLICATION);
wincl.hIconSm = LoadIcon (NULL, IDI_APPLICATION);
wincl.hCursor = LoadCursor (NULL, IDC_ARROW);
wincl.lpszMenuName = NULL;                 /* No menu */
wincl.cbClsExtra = 0;                      /* No extra bytes after the window class */
wincl.cbWndExtra = 0;                      /* structure or the window instance */
/* Use Windows's default colour as the background of the window */
wincl.hbrBackground = (HBRUSH) COLOR_BACKGROUND;

/* Register the window class, and if it fails quit the program */
if (!RegisterClassEx (&wincl))
return 0;

/* The class is registered, let's create the program*/
hwnd = CreateWindowEx (
    0,                   /* Extended possibilites for variation */
    szClassName,         /* Classname */
    "Code::Blocks Template Windows App",       /* Title Text */
    WS_OVERLAPPEDWINDOW, /* default window */
    CW_USEDEFAULT,       /* Windows decides the position */
    CW_USEDEFAULT,       /* where the window ends up on the screen */
    544,                 /* The programs width */
    375,                 /* and height in pixels */
    HWND_DESKTOP,        /* The window is a child-window to desktop */
    NULL,                /* No menu */
    hThisInstance,       /* Program Instance handler */
    NULL                 /* No Window Creation data */
    );

/* Make the window visible on the screen */
ShowWindow (hwnd, nCmdShow);

/* Run the message loop. It will run until GetMessage() returns 0 */
while (GetMessage (&messages, NULL, 0, 0))
{
/* Translate virtual-key messages into character messages */
TranslateMessage(&messages);
/* Send message to WindowProcedure */
DispatchMessage(&messages);
}

/* The program return-value is 0 - The value that PostQuitMessage() gave */
return messages.wParam;
}


/*  This function is called by the Windows function DispatchMessage()  */

LRESULT CALLBACK WindowProcedure (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)                  /* handle the messages */
{
case WM_DESTROY:
    PostQuitMessage (0);       /* send a WM_QUIT to the message queue */
    break;
default:                      /* for messages that we don't deal with */
    return DefWindowProc (hwnd, message, wParam, lParam);
}

return 0;
}

при компиляции получается пустое окно.
Но почему не получается СДЛ проект создать?
Ответить