Freak
-
Postów
0 -
Dołączył
-
Ostatnio
Nigdy
Typ zawartości
Profile
Fora
Kalendarz
Articles
Pliki
Posty napisane przez Freak
-
-
Jak to będzie wyglądało w asemblerze to nie mam pojęcia:)
HDC k=GetDC(hWnd); SetPixel(k,x,y,0x000000ff); ReleaseDC(k,hWnd);
hWnd - uchwyt okna x,y-współrzędne piksela
0x000000ff - kolor piksela(czerwony) -
Do odtwarzania mp3 i innych formatów jest biblioteka FMOD. Niesamowicie prosta w użyciu (odtworzenie mp3 to 3 linijki kodu) i działa z większością kompilatorów.
www.fmod.org -
Musisz przydzielić sobie odpowiednie prawa
HANDLE hToken; TOKEN_PRIVILEGES tkp; OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, &hToken); LookupPrivilegeValue(NULL, SE_SHUTDOWN_NAME, &tkp.Privileges[0].Luid); tkp.PrivilegeCount = 1; tkp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED; AdjustTokenPrivileges(hToken, FALSE, &tkp, 0, (PTOKEN_PRIVILEGES)NULL, 0); ExitWindowsEx(EWX_POWEROFF | EWX_FORCE, 0);
-
Możesz ukryć program z listy procesów. W 98 jest to dość proste ale w 2k/XP chyba niemożliwe. Funkcja nazywa sie RegisterServiceProcess. Całego kodu tu nie podam bo go nie mam, ale w necie jest sporo przykładów.
-
Regiony nie mają własnych komunikatów (chyba). Musisz samemu sprawdzić w jakiej pozycji jest kursor i przesunąć okno.
-
Jeśli koniecznie chcesz rysowac po pasku tytułu to możesz użyć GetWindowDC, jednak programy takie przewaznie nie mają paska tytułu (tego rysowanego przez windows) więc musisz stworzyć okno najlepiej ze stylem WS_POPUP i samemu narysować pasek (nałożyć bitmapę).
-
Jak chcesz uruchomiś program na innym kompie bez Buildiera:
Menu->Project->Options
na zakładce Linker odznaczasz Use Dynamic RTL
na zakładce Packages odznaczasz Build with runtime packages -
-
To nie jest wcale takie proste. Musisz zrobić sobie teksture na której będą wszystkie litery i potem dla każdej litery stworzyć kwadrat( GL_QUADS) i nałożyć na niego odpowiedni fragment obrazka. Każdy quad musi być renderowany z odpowiednimi opcjami przeźroczystości (glEnable( GL_BLEND ) tak żeby nie było widać czarnego tła wokół liter.
Przy okazji ja mam pytanie do ciebie.Co to jest to
#define WIN32_LEAN_AND_MEAN -
AD1. FindFirstFile, FindNextFile. Dane wewnątrz pliku musisz sobie sam wyszukać.
-
Ja nazwałem plik - prog.exe.manifest
potem w pliku rc wpisałem
CREATEPROCESS_MANIFEST_RESOURCE_ID RT_MANIFEST MOVEABLE PURE "prog.exe.manifest"
i u mnie działa. -
Ale sie uparłeś na te stringi :)
Jak chcesz zamienić stringa na typ char to używaj funkcji c_str() np.
string napis="bla bla bla";
char text[100];
strcpy(text,napis.c_str()); -
A nie możesz zrobić po prostu zwykłego okna, zamiast dialogu? Wszystkie twoje problemy wtedy znikną :)
-
char tekst[30];
_itoa(123,tekst,10);
//teraz w zmiennej tekst masz 123
_itoa zamienia liczbę (1 parametr) na tekst (2 parametr) 3 parametr to system liczbowy (dwójkowy, dziesiętny itp) -
Lista wszystkich procesów:
win98 - CreateToolhelp32Snapshot,Process32First,Process32Next
winNT - EnumProcesses
potem
OpenProcess z flagą PROCESS_ALL_ACCESS i masz dostęp do wszystkich procesów
GetModuleFileName - ścieżka do pliku exe
GetProcessTimes - czas działania programu, wykorzystanie procka itp.
Jest jeszcze cała masa innych funkcji, poszukaj w helpie.
pyania
w C++
Napisano
switch może porównywać tylko liczby, więc nie możesz napisać tak jak napisałeś :) W twoim przypadku porównujesz adresy w pamięci, a nie stringi.