Welche Programmiersprache soll ich lernen die auf jedem pc ohne spezielle Programme laufen kann?
Ich suche eine coole Programmiersprache, bei der ich keine extra Programme zum Machen brauche also wenn ich mein programm auf nen usb stick pack, dass es auf jedem pc sofort geht. Außderdem sollte die Sprache auch recht leicht sein :D
Danköö
7 Antworten
Wenn ich ehrlich bin... Ein Troll Programm dass ein Bild auf dem pc erscheinen lässt dass hin und her springt um damit meinen freund zu ärgern ;-)
Als ich Deine Frage las, Dachte ich nur: "Der feuchte Traum eines jeden Hackers."
Wenn Du mal in Sachen Prank gestöbert hättest wärst Du vielleicht auf einen meiner Posts gestoßen.
Ich hatte folgendes kleine Script schon des öfteren gepostet wenn irendwelche Schüler ihren Spieltrieb mit Terrorscripts a la Shutdown oder Forkbomb auslassen wollten. sowas ist nicht lustig. Meines schon.
Es läuft auf jedem Windowsrechner ab Win95.
Das Script ist ein Batch-HTA Hybride und wird als ganz normale Batch mit der Endung .cmd gespeichert. Es muss nichts compiliert werden. den Code einfach in eine beliebigen Texteditor einfügen und als "MovingBlocks.cmd" speichern.
Beim Start entlässt es 20 rote Klötzchen, die durch Berührung mit dem Mauszeiger sterben...
MovingBlocks.cmd
<!-- : Begin batch script
::don't remove the first line!
@echo off
:: this demo will run some randomly moving frameless windows.
:: while colliding with mousecursor the will be removed from screen.
:: if you don't catch the blocks, the will die by random.
for /l %%a in (0,1,20) do start "" mshta.exe "%~f0"
exit /b
::exit /b prevent's the Batch from parsing the leftover of the batchfile
::after the next line begins the HTML/HTA itself
-->
<!DOCTYPE html>
<!--
a windowsize of 0 or 1 before Application-Tag prevents flickering.
this will look a bit off double work , but it's simple... -->
<script>resizeTo(0,0);window.offscreenBuffering = "true";</script>
<hta:application ID="oHTA" border="none" caption="no" contextmenu="no" innerborder="no" scroll="no" selection="no" >
<html>
<style>
html, body{width: 100%;height: 100%;margin: 0px;}
#demo {background: red;width: 100%;height: 100%;margin: 0;}
</style>
<script>
var timer,z,dX,dY,tOut;
x=window.screenLeft; //get startposition
y=window.screenLeft; //dito
s=30; //size
maxMove=20; //max Pixels to move in one cycle
cps=1000/30; //cycles per 1000 milliseconds
maxX=screen.availWidth-s;
maxY=screen.availHeight-s;
function init(){
resizeTo(s,s);
moveTo(x,y);
randomTOut();
flee();
};
//endless Loop! ...will break by clearTimeout(timer)
function randomTOut(){
tOut=(Math.round((Math.random())*480)+20)*10;
moveControl();
timer=setTimeout(function(){randomTOut()},tOut);
};
function moveControl(){
/* dX,dY become random between -maxMove and +maxMove,
the sign determines the direction*/
dX=Math.round(Math.random()*maxMove*2-maxMove);
dY=Math.round(Math.random()*maxMove*2-maxMove);
};
function flee(){
z=setInterval(function(){
if (x>0) {x+=dX;} else {dX=Math.abs(dX);x+=dX;};
if (y>0) {y+=dY;} else {dY=Math.abs(dY);y+=dY;};
if (x<maxX) {x+=dX;} else {dX=-Math.abs(dX);x+=dX;};
if (y<maxY) {y+=dY;} else {dY=-Math.abs(dY);y+=dY;};
moveTo(x,y);
}, cps);
};
function closeW(){
//clear all timmerevents befor closing the window!
clearTimeout(timer);
clearInterval(z);
close()
};
</script>
<!-- collsion with the mouse kills the window-->
<body onload="init()" onmouseover="closeW()">
<div id="demo"></div>
</body>
</html>
Theoretisch liese sich mit so auch auch Dein hüpfendes Bild realisieren oder eine Messagebox die flieht wenn sich die Maus dem Ok-Knopf nähert...
Vielleicht bekommst du es auch selbst hin. Alles bis auf die Zeile
<hta:application .... >
...ist ganz normales HTML ,Javascript und ein Paar Zeilen Batch am Anfang. Jedes Klötzchen ist eine winzige Webseite, welche jedoch nicht im Browser, sondern MSHta.exe ausgeführt wird.
https://www.a-coding-project.de/ratgeber/hta/htaapplication
https://dotnet.currifex.org/web/articles/hta/
Darauf festlegen sollte man sich nicht mehr. HTA ist ein Relikt, welches seit 2005 nur noch im System vorhanden ist, weil Administratoren damit sehr Effiziente Systemanalyse-Scripte geschrieben haben, welche nachwievor noch zu Hauf im Netz vagabundieren...
Aber es funktioniert... und passt garantiert auf jeden Stick (2354 Bytes)
Das geht viiiel einfacher...
ich habe mal etwas umgeräumt und im CSS statt des Roten Hintergrunds Einfach einen Link auf auf ein Onlinebild und eine Alternative Adresse... evtl im gleichen ordner wie die Batch oder ein Base64-img
In den Kommentaren habe ich angegeben Wo du schrauben kannst
Kompatibilität bis IE9 aktiviert ( leider nur bis 9 funktioniert der HTA:Applcation-Tag aber damit kann man leben...)
<!-- : Begin batch script
::don't remove the first line!
@echo off
rem hier Anzahl der Fenster festlegen!
set "WindowCount=3"
for /l %%a in (1,1,%WindowCount%) do start "" mshta.exe "%~f0"
exit /b
::exit /b prevent's the Batch from parsing the leftover of the batchfile
::after the next line begins the HTML/HTA itself
-->
<!DOCTYPE html>
<meta http-equiv="x-ua-compatible" content="ie=9">
<!--
bis zum initialisieren aller css-Parameter Fenstergröße 0 oder 1 -->
<script>resizeTo(0,0);window.offscreenBuffering = "true";</script>
<hta:application ID="oHTA" border="none" caption="no" contextmenu="no" innerborder="no" scroll="no" selection="no" > <!--showInTaskBar="no" könnte auch noch nützlich sein-->
<html>
<style>
html, body{
width: 100%;
height: 100%;
margin: 0px;
}
body{
/* hier die Bildadresse online, local, oder Base64-Bild eintragen , zweite url als Alternative...: zB.Bild im gleichen Ordner wie die Batch */
background-image: url( "http://www.kroatien-auf-deutsch.de/wp-content/uploads/UNterricht-Esel-1024x576.jpg" )
, url("EE ava.gif"); */ das Komma vor url ist wichtig!*/
background-color: Black;
/* so passt jedes Bild immer in den Kasten cover oder contain*/
background-size: cover;
background-repeat: no-repeat;
background-position: center;
color: Red;
}
</style>
<script>
var timer,z,dX,dY,tOut;
/* mit den folgenden 2 Werten kannst Du etwas Variieren*/
s=500; //größe des Bildfensters
maxMove=20; //max Bewegungsweite pro Aktualiserung mehr schneller , weniger langsamer..
cps=1000/30; //Aktualisierungen pro Sekunde (1000ms)
x=window.screenLeft; //get startposition
y=window.screenLeft; //dito
maxX=screen.availWidth-s;
maxY=screen.availHeight-s;
function init(){
resizeTo(s,s);
moveTo(x,y);
randomTOut();
flee();
};
//endless Loop! ...will break by clearTimeout(timer)
function randomTOut(){
tOut=(Math.round((Math.random())*480)+20)*10;
moveControl();
timer=setTimeout(function(){randomTOut()},tOut);
};
function moveControl(){
/* dX,dY become random between -maxMove and +maxMove,
the sign determines the direction*/
dX=Math.round(Math.random()*maxMove*2-maxMove);
dY=Math.round(Math.random()*maxMove*2-maxMove);
};
function flee(){
z=setInterval(function(){
if (x>0) {x+=dX;} else {dX=Math.abs(dX);x+=dX;};
if (y>0) {y+=dY;} else {dY=Math.abs(dY);y+=dY;};
if (x<maxX) {x+=dX;} else {dX=-Math.abs(dX);x+=dX;};
if (y<maxY) {y+=dY;} else {dY=-Math.abs(dY);y+=dY;};
moveTo(x,y);
}, cps);
};
function closeW(){
//clear all timmerevents befor closing the window!
clearTimeout(timer);
clearInterval(z);
close()
};
</script>
<!-- Mausklick killt das Fenster Das Fenster sollte dann schon recht groß sein
bei kleinen Fenstern verwende statt onclick onmouseover-->
<body onload="init()" onclick="closeW()">
<!-- Hier kannst Du Dich äußern-->
<h1>Hallo</h1>
<p>Ich will Spass</p>
</body>
</html>
Funktioniert super! Vielen vielen Dank!
Hab jetzt noch mit
start "" /min wscript /nologo "%temp%\PlaySound.js" "J:\Musik\musik.mp3"
eine lustige musik eingefügt Das wird lustig XD
Wenn es wirklich überall gehen soll und du mit den Einschränkungen und der (meiner Meinung nach) hässlichen Sprache klar kommst: Javascript
Mir fällt zumindest nichts anderes ein, was auf jedem PC (mit Browser) ohne andere Programme läuft (und man auch dort noch direkt ändern kann, Texteditor reicht).
Wenn es auch Ok ist, das du dein Programm bei dir übersetzt und dann als compiliertes, ausführbares Programm auf einem anderen PC (mit bekanntem Betriebssystem, weil für Windows, Mac + Linux braucht es andere Compiler) trägst, dann ist die Auswahl viel größer, Pascal, C, C++, etc. Dann kannst du aber am fremden PC nichts am Programm ändern.
Für C# muss auf dem Ziel .NET oder Mono installiert sein, ich bin mir nicht sicher, ob das mittlerweile bei Windows dabei ist, Linux installiert Mono nicht unbedingt automatisch mit.
Java, Python, Perl, PHP, etc. brauchen eine Installation auf dem Zielsystem.
Schau Dir mal Scriptcase an. Das ist ein Programmgenerator, der Masken und Oberflächen anhand von Parametern erstellt. Programmieren musst Du damit nicht. Das erzeugte Programm basiert auf PHP 7 und ist im Browser ablauffähig. Aber natürlich muss es auf einer Internet-Plattform installiert werden. So einfach Stick und fertig ist das nicht.
Eine Alternative wäre XOJO. Für etwa 800,-€ bekommst Du eine Entwicklungsumgebung, mit der Du WEB-Programme, Windows, Mac und Raspberry ansteuern kannst. Das fertig kompilierte Programm besteht bei Windows nur aus einer Datei. Die Programmiersprache ist Basic und ziemlich flott. Aber Du musst programmieren können. Die Einarbeitung dauert 4-6 Wochen.
Garkeine.
Kein programm ist auf jedem rechner lauffähig ohne irgendwas an software.
ja aber vbs und batch geht ja schon gibs da nicht noch andere?
Ne, die gehen nur unter windows.
Wenn das nur unter windows gehen muss kannste auch gleich nen programm in C++ kompilieren oder so.
ja ich hab windows gemeint , hätt ich erwähnen sollen, ok dann schau ich mal ein paar tutorials zu c++ an ;)
Wenn es nur das ist dann kannst du jede kompilierte programmiersprache nehmen.
C++
Golang
Haskell
Rust
Lisp
...
Was konkret willst du denn programmieren? Eine Programmiersprache wählt man in der Regel aus, indem man sich das Ziel anschaut, und anhand dessen entscheidet, welche Sprache sich am besten eignet.
PS: Programmieren "ohne andere Programme" wird nichts werden.
Wenn ich ehrlich bin... Ein Troll Programm dass ein Bild auf dem pc erscheinen lässt dass hin und her springt um damit meinen freund zu ärgern ;-)
ok ich habs ausprobiert hat auch super funktioniert. nun habe ich am ende noch
<input type="image" height="50" width="30" onclick="DeleteThis" src="Mein_Bild.jpg" alt="Database Search"> hinzugefügt.
Allerdings ist das Bild nicht in der Mitte sondern man sieht nur die obere Hälfte auf der anderen seite ist immernoch der rote balken Wie kann ich das Bild ganz auf das Feld ziehen?