wie mache ich einen möglichst guten Fake BSOD( Blue Screen of Death)?


20.02.2020, 19:52

Sollte mit ner Batch datei oder irgendwas anderem gehen. Weil ich hab geplant in info mit einer verknüpfung und einem kürzel meine freunde zu trollen und zu zeigen dass mein pc kaputt sei... Also kann man z.b. mit batch machen dass die desktopapps verschwinden und die taskleiste ausgeblendet wird?

4 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

während andere sich auf einen Festen Browser stützen, oder irgendwelche Bilder aus dem Netz ziehen. Mein Ansatz.

Eigentlich war das mal mein kleiner Schutz um den Bildschirm vor Zugriff zu schützen: (habe es für Dich etwas umgebaut)

Batch -HTA-Hybride:

  • Die gesamte Anzeige ist stinknormale HTML/JavaScript
  • du kannst reinschreiben oder Ändern was du willst
  • zum schließen links oben auf das etwas abgedunkelte Feld klicken...
  • der Mousecursor wird nach 1Sekunde idle ausgeblendet, bis er sich wieder bewegt.

demo.1

<!-- : Begin batch 
@echo off
set "selfHta=%~0"


start ""  mshta.exe "%selfHta%" 
exit /b


::exit /b prevent's the Batch from parsing the leftover of the batchfile  echo 
::after the next line begins the HTML/HTA itself
-->


<!DOCTYPE html>
<meta http-equiv="x-ua-compatible" content="ie=9">
<meta http-equiv="content-type" content="text/html; charset=utf-8">


<title>HTA_PictureView</title>
<hta:application 
    ID="oHTA"
    applicationname="HTA_PictureView"
    border="none"
    borderstyle="none"
    caption="no"
    contextmenu="no"
    icon="no"
    innerborder="no"
    maximizebutton="no" 
    minimizebutton="no"
    navigable="no" 
    scroll="no"
    scrollflat="no" 
    selection="no"
    showintaskbar="yes" 
    singleinstance="no"
    sysmenu="no" 
    version="1.0"
    windowState="maximize">


<html>
<body onload="Window_onLoad()" >
   
      <!--//hidden Button at top left Corner , a little darker as the picture-->
    <div style="background-color:rgba(0, 0, 0,0.05); width:30px; height:30px" id="aus" onclick="window.close()"></div>
    <div id="TextContainer">
      <div id="smile">
        <h1>:(</h1>
      </div>
      <h2> Fataler Fehler </h2>
     <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.</p>
     <p></p>
     <p>Ihr PC benötigt einen dringenden Ölwechsel!</p>
     <p>rufen sie  die Nummer 0815 4712 an! </p>
   </div>
</body>
<html>


<style>
    html
    {
      height: 100%; 
    }
    body
    {
      height: 100%;
      margin: 0;
      background-color: #5050ff; 
    }
    h1
    {
      margin: 0;
      font-size: 16vh;
    }
    h2
    {
      font-size: 8vh;
    }
    p
    {
      font-size: 4vh;
    }
    #smile
    {
      margin-left: 0px;
      margin-top: 0px;
      margin-right: 5%;
      margin-bottom:1%;
      float: left
    }
    #TextContainer
    {
      margin: 10%;
      margin-left: 20%;
      color: White;
    }
    
</style>


<script>
  function Window_onLoad()
  {
      HideCursor(1000);
  };


    // =========== Helper Funktions =============
  
  function HideCursor(idleTime) 
  {
      var mouseTimer = null, cursorVisible = true;
      function disappearCursor()
      {
          mouseTimer = null;
          document.body.style.cursor = 'none';
          cursorVisible = false;
      }
      document.onmousemove = function()
      {
          if (mouseTimer) 
          {   window.clearTimeout(mouseTimer);}
          if (!cursorVisible)
          {
              document.body.style.cursor = 'default';
              cursorVisible = true;
          }
          mouseTimer = window.setTimeout(disappearCursor, idleTime);
  }   };
  
  
</script>

variante mit einem Bild:

demo2.cmd

<!-- : Begin batch 
@echo off
set "selfHta=%~0"


start ""  mshta.exe "%selfHta%" 
exit /b


::exit /b prevent's the Batch from parsing the leftover of the batchfile  echo 
::after the next line begins the HTML/HTA itself
-->


<!DOCTYPE html>
<meta http-equiv="x-ua-compatible" content="ie=9">
<meta http-equiv="content-type" content="text/html; charset=utf-8">


<title>HTA_PictureView</title>
<hta:application 
    ID="oHTA"
    applicationname="HTA_PictureView"
    border="none"
    borderstyle="none"
    caption="no"
    contextmenu="no"
    icon="no"
    innerborder="no"
    maximizebutton="no" 
    minimizebutton="no"
    navigable="no" 
    scroll="no"
    scrollflat="no" 
    selection="no"
    showintaskbar="yes" 
    singleinstance="no"
    sysmenu="no" 
    version="1.0"
    windowState="maximize">


<html>
<body onload="Window_onLoad()" >
   
      <!--//hidden Button at top left Corner , a little darker as the picture-->
    <div style="background-color:rgba(0, 0, 0,0.05); width:30px; height:30px" id="aus" onclick="window.close()"></div>
</body>
<html>


<style>
    html
    {
      height: 100%; 
    }
    body
    {
      height: 100%;
      margin: 0;
      background-image: url("https://upload.wikimedia.org/wikipedia/commons/5/56/Bsodwindows10.png"); /* hier dein gewünschtes Bild*/
      background-position: cover;
      background-color: #5050ff; 
    }
</style>


<script>
  function Window_onLoad()
  {
      HideCursor(1000);
  };


    // =========== Helper Funktions =============
  
  function HideCursor(idleTime) 
  {
      var mouseTimer = null, cursorVisible = true;
      function disappearCursor()
      {
          mouseTimer = null;
          document.body.style.cursor = 'none';
          cursorVisible = false;
      }
      document.onmousemove = function()
      {
          if (mouseTimer) 
          {   window.clearTimeout(mouseTimer);}
          if (!cursorVisible)
          {
              document.body.style.cursor = 'default';
              cursorVisible = true;
          }
          mouseTimer = window.setTimeout(disappearCursor, idleTime);
  }   };
  
  
</script>

Du kannst jedes beliebige Bild (online oder auch lokale Dateien) als background-image im CSS eisetzen.

Mir persönlich gefällt die Demo1 besser, da nan damit machen kann was man will

Woher ich das weiß:eigene Erfahrung – Ich mach das seit 30 Jahren

Mausennahoj 
Beitragsersteller
 23.03.2020, 22:45

ich hab mal noch ne Frage zum Code 2😆: Bei mir hat das irgendwie nicht funktioniert. Bei dem schon dastehenden bild wurde der untere Teil abgeschnitten und wenn ich ein andere url eingegeben habe, kam das bild dann in kacheln (nicht zentriert sondern nebeneinander)

Außerdem wollte ich dann noch zusätzlich Text hinzufügen, das habe ich auh geschafft, aber wie ändere ich Schriftfarbe, Schriftgröße und eventuell auch Schriftart?

Freue mich schon auf deine Antwort! 😄

0
Erzesel  27.03.2020, 07:39
@Mausennahoj

schau mal ob gesetzt ist? :(backround-.... funktioniert erst ab IE 9 )

<meta http-equiv="x-ua-compatible" content="ie=9">

...erzwingt die Kompatibilität...

background-position: cover;

vegrößert ein Bild, bis es das objekt füllt (hier das Rahmenlose Fenster)

0
Mausennahoj 
Beitragsersteller
 23.02.2020, 00:47

Gibt es eigentlich auch einen Weg, Batch im Hintergrund auszuführen? Also wie bei vbs dass man in der taskleiste keinen batch task sieht?

0
Erzesel  23.02.2020, 01:37
@Mausennahoj

für obige Demos musst Du lediglich die Zeile :

    showintaskbar="yes" zu     showintaskbar="no" andern...

das gilt dann nur für den HTA-Teil...., denn der Batchtei hat nur die Aufgabe den HTA-Teil zu starten...

Für eine echte Batch hilft nur die vbs-Funktion .ShellExecute .

Da sich mit Javascript mehrere Befehle in einer Zeile schreiben lassen verwende ich das JavaScript-Äquivalent der VBSfunktion.

dieses startet die die Batch erneut versteckt. danach wird die ursprünglich Instanz beendet ind die unsichtbare Instanz läuft weiter.

die folgende Batch startet sich selbst unsichtbar und beim nächstennStart beendet sie die zuvor unsichtbar gestartete Instanz wieder...

@echo off
  rem alle  unkommentierte  wie gehabt....
  rem dem unsichtbaren Zielfenster einen markanten Namen geben:
set "WindowName=Rumplheinzchen"  

set self=%~f0
if  not "%~1"=="" goto :mainloop
cd %~dp0

  rem damit man nicht die versteckte Batch im Taskmanager beenden muss, wird eine evtl laufende versteckte Version gekillt
taskkill /f  /fi "windowtitle eq %WindowName%" | find "PID">nul &&(
      rem war Dies erfolgreeich : Meldung ausgeben
    echo HintergrundBatch beendet!
      rem warte 3 sekunden
    timeout 3 >nul
      rem batch ohne weitere Maßnamen
    exit /b
)

echo var shell = new ActiveXObject('shell.application'); shell.ShellExecute('%self:\=\\%', 'runFlag', '', 'open', 0)>"%temp%\runHidden.js"
cscript /nologo "%temp%\runHidden.js"
del /q "%temp%\runHidden.js"
exit /b


  rem hier  beginnt der eigentliche Teil, welcher unsichtbar  läuft. 
:mainloop
  rem Fenstertitel setzen!wichtig, damit Taskkill die Hihtergrundbatch ermitteln kann!
title %WindowName%
  rem ab hier kannst Du  auch Deinen Code verwenden...

  rem Beep-Trick: choice erwartet die Eingabe von x, und Beept bei falschen Eingaben
  rem also sende ich 3mal a an Choice und dann x... Beep Beep Beep    
echo aaax|choice /c x >nul
  rem warte 10Sekunden und Beepe wieder
timeout 10 >nul
goto :mainloop

rem  eine Endbedingung  entfällt, da  beim nächtsten start der Batch   diese Instanz  gekillt wird....

...aber all diese Demos starten eine andere Instanz ihrer selbst...

0
Mausennahoj 
Beitragsersteller
 23.02.2020, 11:15
@Erzesel

des ist ja cool XD das lustige ist unter anderem dass wenn man im Taskmanager den Task cmd.exe beenden will eine tolle Warnung ( Wenn dieser Task mit dem System verbunden ist und er beendet wird kann das system unstabil werden!) kommt. Wie lernt man denn all diese Befehle? Woher kannst du denn das alles? :D

0
Erzesel  23.02.2020, 11:56
@Mausennahoj

was soll ich sagen: Andere Leute lösen Kreuzworträtsel...😆

unter dieser Adresse findet man die wichtigsten Sachen ganz passabel erklärt https://ss64.com/

Ich mache das schon seit 30 Jahren. Das ist wie Klavierspielen irgendwann treffen die Finger automatisch im richtigen Moment die richtige Taste. (Ok. meine Finger bekommen das inzwischen immer seltener reibungslos hin, siehst ja selbst wie oft in meinem normalen Text irgendwelche Buchstaben fehlen oder vertauscht sind😷)

...egal, der Rest ist einfach Kreativität... viele Wege führen nach Rom, aber wenn man Kreativ genug ist um sich aus ein paar Holzlatten , einem Bogen Papier, zwei Büroklammern und einer Aspirintablette ein Flugzeug zu bauen braucht man all diese Wege nicht zu gehen....

schau dir mal das Zweite Script unter https://www.gutefrage.net/frage/mitmit-batch-txt-zeile-aendern#answer-338696839 an.

Um einen Teil einer Zeile zu ändern entferne ich alles was nicht geändert werden soll und füge nach der Änderung den zuvor entfernten Teil wieder hinzu.

Das ist genau das was auch ein Autolackierer tut.... Er entfernt alles was nicht lackiert werden soll und baut nach dem lackieren alles wieder zusammen. (Ist doch egal ob ob man den Kotflügel vom Auto entfernt oder das Auto vom Kotflügel, alles eine Frage der Auslegung)

1

Mach eine Batch Datei und schreib da diesen Befehl rein.

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" -kiosk https://upload.wikimedia.org/wikipedia/commons/5/56/Bsodwindows10.png --overscroll-history-navigation=0

Bevor du die Batch Datei startest, muss Chrome aber komplett beendet sein. Wenn du nur das Fenster schliesst, läuft Chrome im Hintergrund weiter. Daher musst du den Browser im Menü mit "Beenden" schliessen. Dann kannst du die Batch ausführen.


  1. Gewünschten BSOD als Desktophintergrund festlegen
  2. Taskleiste auf 'automatisch ausblenden' stellen
  3. Mauszeiger nach ganz rechts an den Rand