Home

Das Tippsforum

Du brauchst noch mehr Hilfe bei einem bestimmten Thema? Du hast einen unserer Tipps ausprobiert, aber es funktioniert immer noch nicht? Dann ist unser Tippsforum genau das richtige für dich.
Link zum Forum

Fullscreen mit C++ erstellen

Geschrieben in Allgemein am 8 September 2007

Ich diesem Tutorial zeige ich euch, wie man sein eigenes C++ Konsolenprogramm im Fullscreenmodus öffnet. Als erstes kommt der Code un dann die Erklärung:
#include <iostream>
#include <ostream>
#include <windows.h>
int main()
{
keybd_event ( VK_MENU , 0×38 , 0 , 0 );
keybd_event ( VK_RETURN , 0×1c , 0 , 0 );
keybd_event ( VK_RETURN , 0×1c , KEYEVENTF_KEYUP , 0 );
keybd_event ( VK_MENU , 0×38 , KEYEVENTF_KEYUP , 0 );
std::cout << “Fullscreen gestartet”;
system(”PAUSE”);
return 0;
}

In den ersten drei Zeilen werden die verschiedenen Funktionen includet, die man braucht um das Programm auszuführen. Alle diese Funktionen sind Standart Funktionen und müssten mit jedem guten Compiler funktionieren. In Zeile 6-9 wird der Fullscreen Modus gelanden. Diese Funktionen sollten immer so bleiben, wie sie jetzt sind. In Zeile 10 wird dann nur noch eine Text geschrieben, damit der Fullscreen Modus nicht komplett leer bleibt. In Zeile 11 sorgen wir mit dem Befehl system(”PAUSE”) dafür, dass sich das Fenster nicht gleich wieder schließt.

Code von PHP-Dateien kostenlos verschlüsseln

Geschrieben in Allgemein am 7 September 2007

Ziel der Verschlüsselung ist es, den Quelltext(Sourcecode) von PHP-Dateien so zu verschlüsseln, dass fremde Personen ihn nicht mehr Entschlüsseln können. Für die Verschlüsselungen gibt es teuer Programme wie zum Beispiel IonCube oder Zend, die teilweise 1000 Dollar kosten. In diesem Tutorial möchte ich mich mit zwei kostenlosen Alternativen beschäftigen. Das sind PHP Obfuscator und POBS. Diese Programme sind nicht unbedingt so sicher die die teuren Programme, halten aber viele Leute, die keine PHP-Profis sind, davon ab, den Code wiederherzustellen. Außerdem werden ich in diesen Beispieln ein Test PHP-Script verschlüsseln, damit sie sehen, wie der Code nachher aussieht.

error_reporting();
$text = "Test PHP";
echo $text;
?>

Aber nun Fangen wir an:

POBS:

  • Besteht aus PHP-Dateien
  • Ist plattformunabhänig
  • Verschlüsselt nur PHP-Variablen, Funktionen, JavaScript Variablen und Constanten
  • Kann ganze Verzeichnisse auf einmal verschlüsseln

Test PHP-Code:
error_reporting();
$V1cb251ec = "Test PHP";
echo $V1cb251ec;
?>

PHP Obfuscator:

  • Muss installiert werden
  • Funktioniert nur mit Windows
  • Ändert auch nur Namen der Variablen, Funktionen und Constanten
  • Wählt lange Namen

Test PHP-Code:

Fazit: Für Leute mit Windows ist der PHP Obfuscator besser geeignet, da er besser(schwierigere) Namen für Variablen und Funktionen wählt. Trotzdem bieten diese beiden Verschlüsseler keinen optimalen Schutz.

Hier sind die Downloadlinks für die Leute, die sich die Programme angucken wollen:

POBS

PHP Obfuscator

Geschrieben Text im Firefox auf Rechtschreibung überschrieben

Geschrieben in Allgemein am 30 August 2007

Hattet ihr auch schon einmal das Problem, das euch andere Mitglieder im Forum nerven, weil ich angeblich zu viele Rechtschreibfehler macht oder wollt ihr an euer Internetseite weitermachen und keine Rechtschreibfehler. Dann gibt es jetzt die neue Lösung für den Firefox. Das Wörterbuch für den Firefox kann man hier downloaden und es ist in fast jeder Sprache verfügbar. Wenn du in irgendein Textfeld schreibst, prüft die Erweiterung automatisch ob das aktuelle Wort im Wörterbuch enthalten ist. Wenn das Wort falsch geschrieben ist, wird es rot unterstrichen. Dies sieht dann ungefähr so aus:

Das Wörterbuch für den Firefox

Windows 2000 / XP schneller herunterfahren

Geschrieben in Allgemein am 19 August 2007

Sie haben auch das Problem. Sie wollen jetzt schnell den PC beenden, aber er lässt sich nicht runterfahren. Dann ist das hier genau das richtige für dich. Hier ist eine 4 Schritte Anleitung wie du deinen PC dazu bringst schneller herunterzufahren.

  1. Öffnen Sie die Windows- Registrierung, indem sie über Start/Ausführen in der Eingabe “regedit” ohne “” eingeben. Klicken sie dann in der Windows- Registrierung auf Bearbeiten/Suchen (oder klicken sie Strg+F) und geben sie WaitToKillServiceTimeout ein.
  2. Machen Sie auf dem gefundenen Wert einen Doppelklick und geben sie dort 1500 ein. Dies bewirkt das Windows Anwendungen und Diensten 1,5 Sekunden Zeit gibt sich zu beenden, bevor sie gewaltsam abgeschaltet werden. Werte unter 1500 sind nicht zu empfehlen, da sich meistens das System gefährden.
  3. Suchen sie nun nach der Datei AutoEndTasks in der Windows- Registrierung und geben Sie den gefundenen Wert eine 1!
  4. Schalten Sie ihren PC aus und erleben sie selbst wie schnell es gehen kann.

Erste Schritte mit AJAX

Geschrieben in Allgemein am 14 August 2007

Um einen HTTP-Request mittels JavaScript an einen Server absetzen zu können, benötigt man eine Instanz einer Klasse, welche diese Funktionalität bietet. Solch eine Klasse, genannt XMLHTTP, wurde ursprünglich im Internet Explorer als ein ActiveX-Objekt eingeführt. Später implementierten Mozilla, Safari und andere Browser eine Klasse namens XMLHttpRequest, welche die Methoden und Eigenschaften des originalen ActiveX-Objektes von Microsoft unterstützt.

Einige Versionen einiger Mozilla-basierter Browser werden nicht korrekt arbeiten, wenn die Antwort des Servers keinen XML mime-type im Header hat. Um dem entgegenzuwirken, kann man einen zusätzlichen Methodenaufruf absetzen, um den vom Server gesendeten Header zu überschreiben - für den Fall, dass dessen mime-type nicht text/xml lautet. Im nächsten Schritt entscheidet man, was zu tun ist, nachdem man vom Server eine Antwort zu dem abgesetzten Request bekommen hat. An dieser Stelle muss man dem HTTP Request-Objekt lediglich mitteilen, welche JavaScript-Funktion die Antwort abarbeiten soll. Dies erreicht man, indem man die onreadystatechange-Eigenschaft des Objektes genauso nennt wie die JavaScript-Funktion, welche man benutzen möchte. Zur Erinnerung: beim Abschicken des Requests wurde der Name einer JavaScript-Funktion mitgegeben, welche die Antwort abarbeiten soll.

http_request.onreadystatechange = nameDerFunktion;

Schauen wir mal, was diese Funktion tun sollte. Zuerst muss die Funktion den Status des Requests abfragen. Hat dieser den Wert 4, bedeutet das, dass die Antwort des Servers vollständig empfangen wurde und dass sie nun bearbeitet werden kann. Methoden des XMLHttpRequest Objekts abort() Bricht die aktuelle Anfrage ab

getAllResponseHeaders()
Gibt den Antwort Header als String zurück

getResponseHeader(”xyz”)
Gibt Den Header xyz zurück

open(”method”, “URL“[, asyncFlag[, “userName”[, “password”]]])
Stellt die Verbindung zur Zielseite her

send(daten)
Sendet Daten an den Server

setRequestHeader(”key”, “value”)
Setzen von Header

setMimeType(”mimetype”)
Überschreibt den MimeType der angeforderten Daten

Eigenschaften des XMLHttpRequest Objekts

onreadystatechange
Callbackfunktion, die bei Events aufgerufen werden soll

readyState
Aktueller Status der Anfrage:

  • 0 : Noch keine Verbindung hergestellt (open nicht aufgerufen?)

  • 1 : Noch keine Anfrage gestellt (send nicht aufgerufen?)

  • 2 : Anfrage gestellt, aber noch nicht abgeschlossen. Header und Status verfügbar

  • 3 : Response Daten werden übertragen

  • 4 : Anfrage abgeschlossen, alle Daten übertragen

responseText
Ergebnis der Anfrage als Text

responseXML
Ergebnis als XML (Falls gültiges XML-Dokument. Sonst null)

status
HTTP-Status der Anfrage (200=OK)

statusText HTTP-Status im Textformat

Jetzt könnten wir Beispielsweise ein Script schreiben, welches eine Datei ausließt und diese dann ausgiebt:
ajax1.html

<script type="text/javascript" language="javascript">    var http_request = false;function macheRequest(url) {http_request = false;if (window.XMLHttpRequest) { // Mozilla, Safari,...http_request = new XMLHttpRequest();if (http_request.overrideMimeType) {

http_request.overrideMimeType('text/xml');

// zu dieser Zeile siehe weiter unten

}

} else if (window.ActiveXObject) { // IE

try {

http_request = new ActiveXObject("Msxml2.XMLHTTP");

} catch (e) {

try {

http_request = new ActiveXObject("Microsoft.XMLHTTP");

} catch (e) {}

}

}

if (!http_request) {

alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');

return false;

}

http_request.onreadystatechange = alertInhalt;

http_request.open('GET', url, true);

http_request.send(null);

}

function alertInhalt() {

if (http_request.readyState == 4) {

var answer = http_request.responseText;

if(document.getElementById("inhalt").innerHTML != answer){

document.getElementById("inhalt").innerHTML = answer;

}

else{

document.getElementById("inhalt").innerHTML = "";

}

}

}

</script>

<span

style="cursor: pointer; text-decoration: underline"

onclick="macheRequest('test.html')">Einen Request absetzen

</span>

<div id="inhalt"></div>


Dieses Script ließt den Inhalt der test.html aus. Diese hat den Inhalt:

 Ich bin die Ausgabe

Natürlich kann man auch XML-Dateien auslesen, das geht so:

ajax2.html:

<script type="text/javascript" language="javascript">    var http_request = false;function macheRequest(url) {http_request = false;if (window.XMLHttpRequest) { // Mozilla, Safari,...

http_request = new XMLHttpRequest();

if (http_request.overrideMimeType) {

http_request.overrideMimeType('text/xml');

// zu dieser Zeile siehe weiter unten

}

} else if (window.ActiveXObject) { // IE

try {

http_request = new ActiveXObject("Msxml2.XMLHTTP");

} catch (e) {

try {

http_request = new ActiveXObject("Microsoft.XMLHTTP");

} catch (e) {}

}

}

if (!http_request) {

alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');

return false;

}

http_request.onreadystatechange = alertInhalt;

http_request.open('GET', url, true);

http_request.send(null);

}

function alertInhalt() {

if (http_request.readyState == 4) {

var xmldoc = http_request.responseXML;

var root_node = xmldoc.getElementsByTagName('nachricht').item(0);

var answer = root_node.firstChild.data;

//var answer = http_request.responseText;

if(document.getElementById("inhalt").innerHTML != answer){

document.getElementById("inhalt").innerHTML = answer;

}

else{

document.getElementById("inhalt").innerHTML = "";

}

}

}

</script>

<span

style="cursor: pointer; text-decoration: underline"

onclick="macheRequest('test.xml')">Einen Request absetzen

</span>

<div id="inhalt"></div>

In der XML-Datei “test.xml” steht dann:

<?xml version="1.0"?><nachricht>Wie gehst?!</nachricht>

Mit unserem bissherigem Können, könnten wir auch ein Script schreiben, welches mit AJAX und PHP arbeitet. D.h. wir rufen mit Hilfe einer PHP-Datei die aktuelle Uhrzeit ab.

ajax3.html

<script type="text/javascript" language="javascript">    var http_request = false;function macheRequest(url) {

http_request = false;

if (window.XMLHttpRequest) { // Mozilla, Safari,...

http_request = new XMLHttpRequest();

if (http_request.overrideMimeType) {

http_request.overrideMimeType('text/xml');

// zu dieser Zeile siehe weiter unten

}

} else if (window.ActiveXObject) { // IE

try {

http_request = new ActiveXObject("Msxml2.XMLHTTP");

} catch (e) {

try {

http_request = new ActiveXObject("Microsoft.XMLHTTP");

} catch (e) {}

}

}

if (!http_request) {

alert('Ende :( Kann keine XMLHTTP-Instanz erzeugen');

return false;

}

http_request.onreadystatechange = alertInhalt;

http_request.open('GET', url, true);

http_request.send(null);

}

function alertInhalt() {

if (http_request.readyState == 4) {

var answer = http_request.responseText;

//var answer = http_request.responseText;

if(document.getElementById("inhalt").innerHTML != answer){

document.getElementById("inhalt").innerHTML = answer;

}

else{

document.getElementById("inhalt").innerHTML = "";

}

}

}

setInterval("macheRequest('uhrzeit.php')",1000);

</script>

Dieses Script gibt die aktuelle Serverzeit aus:<br>

<div id="inhalt">Lade..</div>

In der uhrzeit.php müsste dann folgendes stehen:

uhrzeit.php

<?php

echo date("H:i:s", time());

?>

Abschluss Im ersten Kapitel haben wir angesprochen, dass das Navigieren mit den Vor- und Zurückbutton sehr schwierig ist, doch so schwierig ist es nun auch wieder nicht…
Hier ein Beispiel, wo das Navigieren mit den Buttons klappt: http://ajax.solin.ch/
Wie man sieht Arbeitet dieser “Ajaxaner” mit Ankern (<a name=”so_und_so”>) dadurch ist das Navigieren möglich… (näheres siehe Source-Code auf der Seite).

Dieses Tutorial wurde von Netbuster geschrieben und von Think bearbeitet. ES steht unter Creativ Commons 2.0. Copyright by ajax-community.de

« Vorherige Seite Nächste Seite »