PDA

Просмотр полной версии : как печатать в консоль цветные символы и запускать внешние приложения?


Дикс
26.07.2007, 18:21
сабж
можно ли написать простое консольное приложение на Си с элементами Си++, но без классов?

The_HuliGun
26.07.2007, 18:29
Подумай над тем, что спросил. С++ есть розширение С. Если ты что то напишеш с елементами С++, ето будет уже не С.

Helios
26.07.2007, 19:56
По теме:

Запуск приложений:


using namespace std;

int main()
{
system("explorer");
return 0;
}

gibson
26.07.2007, 21:14
простое консольное приложение
ну для этого много не нужно.
#include <iostream.h> - библиотека С++
#include <conio.h> - библиотка где есть функции для бывода цветовых сообщений
#include <graphics.h> - графическая библиотека =\

void main()
{
textcolor(GREEN);
cout<<"Hi from antichat";
}

tclover
26.07.2007, 23:14
#include <windows.h>
#include <cstdio>

int main(int argc, char **argv)
{
HANDLE hOut;
WORD cAttrib;
char newprocess[] = "C:\\windows\\system32\\calc.exe";
STARTUPINFO si;
PROCESS_INFORMATION piP;

hOut = GetStdHandle(STD_OUTPUT_HANDLE);
cAttrib = FOREGROUND_GREEN | FOREGROUND_INTENSITY;
SetConsoleTextAttribute(hOut, cAttrib);
printf("=\\");
//new process

ZeroMemory(&si, sizeof(STARTUPINFO));
si.cb = sizeof(STARTUPINFO);
CreateProcess(newprocess, NULL, NULL, NULL, FALSE, CREATE_DEFAULT_ERROR_MODE, NULL, NULL, &si, &piP);
WaitForSingleObject(piP.hProcess, INFINITE);
CloseHandle(piP.hThread);
CloseHandle(piP.hProcess);
return 0;
}
классов нет =\
под си переделать не проблема =\

Дикс
30.07.2007, 18:42
Спасибо, ребята!
В будущем всё освою до мелочей, а пока уже интереснее делать простые примеры ))

Дикс
05.08.2007, 13:18
а как запустить прогу с параметрами?
system("gens.exe games/beyond_oasis.bin"); - запускает пустой эмулятор, а в батнике - запускается игра.

da_ff
05.08.2007, 13:51
>> а как запустить прогу с параметрами?

ShellExecute(0, "open", TEXT("NOTEPAD"), TEXT("README.TXT"), nil, SW_SHOWNORMAL);

или
BOOL CreateProcess(
PCTSTR pszApplicationName,
PTSTR pszCommandLine,
PSECURITY_ATTRIBUTES psaProcess,
PSECURITY_ATTRIBUTES psaThread,
BOOL bInheritHandles,
DWORD fdwCreate,
PVOID pvEnvironment,
PCTSTR pszCurDir,
PSTARTUPINFO psiStartInfo,
PPROCESS_INFORMATION ppiProcInfo);

STARTUPINFO si = { sizeof(si) };
PROCESS_INFORMATION pi;
CreateProcess(NULL, TEXT("NOTEPAD"), NULL, NULL, FALSE,
0, NULL, NULL, &si, &pi);

Дикс
07.08.2007, 12:52
пасибо!