есть исходник на C... как его студией откомпилить? как вообще компилятся программы на С.. для этого разве обязательно в студии создавать новый проект? можно и с консоли... но тогда придется вручную много параметров передавать ведь... да и если с консоли, то не знаю, как ресурсы подключать... в общем, как удобнее компилировать... да и если создавать проект... то приходится добавлять туда все иклюды и т.д... и компилится как приложение на С++, а не на С... от этого, наверно, и размер больше будет. объясните, пожалуйста. я до этого никогда не компилировал студией... а то даже не могу примеры с МСДНа скомпилить и проверить %)
командная строка рулит cl.exe filename.c - без оптимизации, cl.exe /Ox filename.c - макс. оптимизация.
TerraIncognita ресурсы обрабатываются линковщиком. Код (Text): link yourobj.obj resources.res yourobj.obj - объектник полученный после компиляции +необходимые параметры для линковки параметры можно посмотреть в хелп-файле от масма, там и для компилера, и для линковщика есть
RamMerLabs: cl test.c /c /link user32.lib <- это чтоб получить OBJ link /SUBSYSTEM:WINDOWS test.obj test.res unresolved external symbol __imp__DefWindowProcA@16 unresolved external symbol __imp__PostQuitMessage@4 .... и т.д. что я не так делаю? Great: все равно ресурсы не подключаются. а опцию эту я уже нашел...
TerraIncognita либы нужно указать линковщику. в данном случае user32.lib вот пример сборки через командную строку: Код (Text): link kernel32.lib user32.lib /nologo /subsystem:windows file.obj file.res /pdb:none /machine:I386 /out:"file.exe"
RamMerLabs , огрмоное спасибо!! =) Great, сделал чуть не так - в настройках проекта прописать путь к RES-файлу. иконка с ресурсов у экзешника появилась, но диалоговое окошко не появляется при запуске... скомпилил с консоли, как сказал RamMerLabs , - получилось... =) я догадываюсь, почему... студия 2008 по-умолчанию "работает с юникодом" =((( то есть, при вызове MessageBox мне приходится писать не MessageBox(..,..,..,..), а MessageBoxA. по умолчанию ведь "W". а так как в сорце, который я компилю нету в конце имен ф-ий Win32 API "W", и "A", то считается, как "W". можно как-то сделать, чтоб отключился этот ЮНИКОД?... рылся в настройках проекта - не нашел там... с консоли, мне кажется, компилировать удобнее...
ВСе! Огромное спасибо всем! #UNDEF UNICODE помог нормально! получается компилировать и с консоли и из студии! =) THX