[Delphi] Niebieski ekran śmierci

0

Witam, wie ktoś może jak napisać kod który będzie sztucznie lub realnie generował ekran śmierci - ten niebieski - tylko żeby ten kod nic takiego wielkiego nie zrobił tylko i wyłącznie generował zawsze ten niebieski ekran - a mówiąc "ztucznie" - nie mam na myśli narysowanie sobie np tego okienka tylko odwołanie do jakiejś systemowej dll-ki np.

0

Na win 9x możesz sprawdzić: trzeba załadować dllkę o takiej nazwie, aby druga taka był już załadowana. Np. gdi.dll i c:[tu jest moj program]\gdi.dll
W XP/w2k... hmmm Wartośc DWORD: CrashOnCtrlScroll = 1 w HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\i8042prt\Parameters\
Potem należy zasymulować naciśnięcie [ctrl] + [Scroll Lock]

0

Krótko mówiąc, musisz spróbować dobrać się do obszaru pamięci zarezerwowanego przez system operacyjny :)

0

Wcale nie trzeba zaraz krzaczyć systemu.
Programik FrogsIce służący ukrywaniu SoftIce przed innymi aplikacjami potrafił na blue screenie wyświetlać swoje komunikaty. Jednak nie znam jego sposobu, gdyż nigdy tego nie szukałem - może są gdzieś jego źródła? Trudno mi stwierdzić - ale piszę tego posta aby pokazać, że można normalnie a nie poprzez błędy ;)

// norton anti virus tez tak robi [mf]

0
Marooned napisał(a)

Wcale nie trzeba zaraz krzaczyć systemu.
Programik FrogsIce służący ukrywaniu SoftIce przed innymi aplikacjami potrafił na blue screenie wyświetlać swoje komunikaty. Jednak nie znam jego sposobu, gdyż nigdy tego nie szukałem - może są gdzieś jego źródła? Trudno mi stwierdzić - ale piszę tego posta aby pokazać, że można normalnie a nie poprzez błędy ;)

Jeżeli chodzi o windowsy posiadające DOSa, to możnaby pokusić się o uruchomienie na całym ekranie dosowego programu, który po prostu miałby niebieskie tło i odpowiedni napis i czekał na wciśnięcie klawisza.

0

Ściągnij kontrolkę Blue Screen. Na pewno nie działa po 2k/XP. W tych systemach wywołanie takiego blue screena nie będzie chyba łatwe, gdyż tam takie występują tylko chyba przy błędach STOP, a do takiego stanu system już trudno doprowadzić. Ale mogę się mylić, może istnieje jakaś nie udokomentowana funkcja.

0

znaczy może być o błędy bo system już po tym ma nie być doprowadzony do używania ponownego (przed zresetowaniem of kors - bo nie całkiem) - chcę zrobić program blokujący dostęp do komputera byle żeby pojawił się też blue screen na WinXp/2k - ma ktoś pomysł jak doprowadzić system do takiej załamki ? Jak będzie normalne pole "podaj hasło" to mój brat konkretnie będzie chciał żeby mu to hasło podać a jak będzie takie coś to znając go to się wystraszy i wyłączy komputer i będzie siedział cicho :D

// przeca ci wkleiłem linki - Ł

0

Mówię Ci. Jeśli nic z powyższego nie pomoże, to próbuj coś zapisywać do obszaru pamięci przydzielonego dla systemu. Tylko teraz pytanie jak zapisać coś do konkretnego adresu...

0
Juhas napisał(a)

Mówię Ci. Jeśli nic z powyższego nie pomoże, to próbuj coś zapisywać do obszaru pamięci przydzielonego dla systemu. Tylko teraz pytanie jak zapisać coś do konkretnego adresu...

Ekhm... program nie ma dostepu do takiej pamieci za sprawa magicznej rzeczy jaka jest stronicowanie. Takie zapisanie do bylejakiego adresu wywali co najwyzej cos w rodzaju Access Violation, sam zobacz:

var
  i: ^byte;
begin
  i := Pointer($FFFFFFFF);
  i^ := 1;
end;
0
Wolverine napisał(a)

Ekhm... program nie ma dostepu do takiej pamieci za sprawa magicznej rzeczy jaka jest stronicowanie. Takie zapisanie do bylejakiego adresu wywali co najwyzej cos w rodzaju Access Violation, sam zobacz:

Nie wiem. Mnie uczyli, że WInda pokazuje bluescreena wtedy, gdy jakaś aplikacja próbuje dobrać się do obszaru pamięci zarezerwowanej przez system. Czy nawet używanej przez system.

0
Juhas napisał(a)

Nie wiem. Mnie uczyli, że WInda pokazuje bluescreena wtedy, gdy jakaś aplikacja próbuje dobrać się do obszaru pamięci zarezerwowanej przez system. Czy nawet używanej przez system.

Ciekaw jestem, kto Cię tego uczył. Przecież programy w systemie NT pracują w najniższym poziomie uprzywilejowania i nie mają dostępu do żadnej pamięci poza swoją własną. Tym bardziej nie mogą się dossać do pamieci systemu operacyjnego, która jest chroniona (MMU procesora nie pozwala) przez odpowiednie uprawnienia (CPL = 0).
Windows NT pokazuje niebieski ekran w zasadzie tylko, gdy sypie się jakiś sterownik, czyli oprogramowanie pracujące z maksymalnymi uprawnieniami zaczyna sobie mazać po pamięci.

No chyba że mowa o systemach 9x. ale przecież nie o nie chodzi w tym wątku.

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