[DELPHi]Wersja systemu

0

Mam pewien dylemat, mianowicie robie pewien program, w którym musze skorzystać z kilku funkcji zaleznych od api win9x i xp np. zapalanie diody. Znalazlem kod na forum 4p pod 9x:
GetKeyboardState(KS);
KS[VK_SCROLL] := ON;
SetKeyboardState(KS);
I NT:
keybd_event(VK_NUMLOCK, $45, KEYEVENTF_EXTENDEDKEY or 0, 0);
hmm... Planowalem sprawdzic wersje systemu przy właczeniu programu a potem w zależnosci od tego czy 9x czy nt wykonać odpowiedni kod, tylko że jak cos takiego skompilowac.. Jestem poczatkującym wiec sami zrozumcie. Pomyslalem ze można by zrobić dll z tymi funkcjami nt, ale jego i tak trzeba by skompilowac np pod xp i dopiero potem dołaczyc do mojego programu.. Moze dacie mi jakąś podpowiedź jak wyjść ze tej sytuacji..

0

Sprwadzić przy uruchamianiu programu, z jaką wersją Windows masz do czynienia. Vide opis funkcji GetVersionEx() w MSDN albo mój pseudokomponencik (pseudo-, bo niedopracowany :) ) WindowsInformator: http://4programmers.net/file.php?id=1065

0

Spoko ja wiem jak sprawdzic wersje systemu, problem polega na tym jak uruchomic kod odpowiedni dla danej wersji os.
Przeciez nie skompiluje programu zawierajacego wczesniej wymienione przeze mnie funkcje, chyba;p Chodi mi wlasnie o to czy szło by to zrobic, a jesli tak to jak.</ort>

0

IMHO te funkcje są obecne we wszystkich Windowsach (tzn. i 9x, i NT), ale głowy sobie uciąć nie dam - patrz na MSDN. Zawsze też pozostaje dynamiczne ładowanie bibliotki DLL oraz uzyskiwanie adresu procedur i dopiero wtedy ich wykonywanie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1