21.01.13 (Allgemein)
Fangen wir also an:
Man öffne eine Datei mit dem Störenden Inhalt in Notepad++ …

und markiere nun den Absatz der der uns stört:

Danach verwendet man das suchen und ersetzen Tool am einfachsten durch die Tastenkombination [STRG] + [H].
Nun sehen wir unseren selektierten Text in der “Suche nach” Textbox.

Jetzt wählen wir noch den Tab “In Dateien Suchen” und klicken als
erstes auf “Ordner der akt. Datei” und da wir ja das gesamte Projekt
durchsuchen möchten auf “Unterverzeichnisse”.
Selbstverständlich könnt ihr den passenden Pfad auch manuell heraussuchen.
Den Suchmodus stellt man am besten auf “Normal” damit keine ungewollten Ersetzungen stattfinden.

Und am ende habt ihr erfolgreich euer Projekt von den ungewollten
Einträgen befreit und das trotz Leerzeichen Tabs und Zeilenumbrüche.
Beachtet aber bitte das immer genau dieser String gesucht
wird, sprich es klappt nicht wenn ein Leerzeichen mehr oder weniger oder
sonst eine Kleinigkeit anders ist!

1 Kommentar »
11.02.12 (Tutorial´s)
Wer mal mit C oder C++ gearbeitet hat kennt ein ähnliches Modell bereits die Pointer. Allerdings da PHP ja eine Scriptsprache ist stellt es keine Speicheradressen zur Verfügung.
Dafür haben wir aber Referenzen die zwar keinen Performance voreilt verschaffen dafür aber einen ähnliche Möglichkeiten zur Manipulation der Variablen bietet (von der Arithmetik mal abgesehen).
ein kleines Beispiel habe ich mal hier zusammengestellt ziel war es eine Wrapperklasse für Strings zu erstellen .
global $counter, $memory;
$counter = 0;
$memory = array();
function &getNewReference($dataType) {
global $counter;
global $memory;
do {
$name = 'RefKey'.$counter++;
} while (isset($memory[$name]));
$memory[$name] = $dataType;
if(is_object($dataType) && in_array('setRefKey', get_class_methods($dataType))) {
$dataType->setRefKey($name);
}
return $memory[$name];
}
class String{
private $value;
private $refKey;
public function setRefKey($name) {
$this->refKey = $name;
}
public function __construct($value = null){
$this->value = $value;
}
public static function &string($value = null) {
// Übergibt eine Referenz auf die Funktion getNewReference,
// die ihreseits eine Referenz auf das $memory Array übergibt
$string = &getNewReference(new String($value));
return $string;
}
public function __toString() {
return (string) $this->value;
}
public function __destruct() {
global $memory;
// Kann sofort zerstört werden da keine Referenz.
if($this->refKey === null) {
return;
}
// Prüfen ob ein Object gleichen types in die referenz geschrieben wurde.
if($memory[$this->refKey] instanceof self) {
// Neuen object alten Referenzkey übertragen.
$memory[$this->refKey]->setRefKey($this->refKey);
// Ist es eine skalaren Variable ("Normaler Datentyp" string, int , bool, usw..)".
} else if(is_scalar($memory[$this->refKey])){
// Neuen wert aus der Referenz auslesen.
$value = $memory[$this->refKey];
// Eigene Classe ermittel (für extended).
$class = get_class($this);;
// Neues Object erzeugen und in das Array mit den Referenzen schreiben
$memory[$this->refKey] = new $class($value);
// Neuen object alten Referenzkey übertragen.
$memory[$this->refKey]->setRefKey($this->refKey);
}
}
}
$foo = & String::string();
$foo = 'Hallo Welt!';
$bar = & String::string();
$bar = 42;
var_dump($foo);
echo $foo.' Der sinn des Lebens ist '. $bar;
2 Kommentare »
11.01.12 (Allgemein)
In CSS gibt es viele Deklarationen die mehrere Werte nutzen, die sich auf unterschiedlichen Seiten des Boxmodells beziehen z.B.:
• margin
• padding
• border-width
Da ich nun auch gerne vergesse welcher Wert nun zu welcher Seite gehört, habe ich mal einen kleinen Merksatz mit Anschauungsmaterial erstellt.
Am Anfang das einfachste ein (1) Wert.
Da nur ein wert zu Verfügung steht ist dieser für alle Seiten gleich
Also ist:
p {
margin:10px;
}
eine vereinfachte Darstellung von:
p {
margin:10px 10px 10px 10px;
}
Nun kommen wir schon zu zwei (2) Werten.
p {
margin:10px 5px;
}

Der Trick funktioniert wen wir oben beginnen zu zählen und dann im Uhrzeigersinn weiterzählen. Somit würde oben Wert Eins und Rechts Wert Zwei Stehen.
Doch wie belege ich nun die restlichen zwei Seiten?
Dieses ist ganz einfach ich nehme einfach immer die gegenüberliegende Seite, so ergibt sich ganz automatisch:
- Wert Eins für Oben und Unten
- Wert Zwei Rechts und Links
Der Trick funktioniert übrigens auch für drei Werte
p {
margin:10px 5px 15px;
}

Allerdings bleibt nach dem Weiterzählen nur die linke Seite ohne Wert also kann auch nur darauf gespiegelt werden:
- Wert Eins für Oben
- Wert Zwei Rechts und Links
- Wert Drei für Unten
Als letztes alle vier Werte. Hier muss nicht mehr gespiegelt werden sondern einfach nur gezählt
p {
margin:10px 5px 15px 20px;
}

Somit ergibt sich dann folgendes Bild:
- Wert Eins für Oben
- Wert Zwei Rechts
- Wert Drei für Unten
- Wert Vier für Links
Ich hoffe ich konnte euch mit meinen Tutorial ein wenig helfen.
Keine Kommentare »
24.08.11 (Allgemein)
Google mit schwarz hässlich…
Google ist laangweilig…
Ich mag das neue aussehen der Website nicht…
Wer diese oder ähnliche Probleme hat, kann geholfen werden: Die Lösung heißt zu mindestens im Mozilla Firefox und Google Chrome Stylish. Einfach dieses Addon installieren und sich über benutzerdefiniertes Aussehen der Webseiten freuen.
Egal ob Google, das Lieblings Forum oder vielleicht sogar die Konfigurationsseite ihres Routers alles lässt sich damit anpassen.
Und Hier noch gleich ein Link zu einen Style, der die meiner Meinung hässlich schwarze Navigationsleiste von Google aufhübscht: userstyles.org – Google navigation bar – revert to light theme.
Falles noch Bildmaterial gewünscht oder Fragen offen sind einfach einen Kommentar dalassen.
Keine Kommentare »
03.08.11 (Allgemein, VB.Net)
Dictionary Sind äußert Praktisch wenn man gerade ein KeyValuePair Benötigt.
Sprich einen beliebigen Index und ein damit verknüpfte Value.
In diesen beispiel zeige ich euch wie Einfach es ist in diesen Konstrukt sogar Rückwärts zu suchen:
Public Shared Function GetKeyValuePairFromValue(ByVal sValue As String, _
ByVal CheckDictionary As Dictionary(Of Integer, String)) As _
KeyValuePair(Of Integer, String)
Return CType((From kvp As KeyValuePair(Of Integer, String) In _
CheckDictionary Where kvp.Value = sValue.Trim() Select kvp).First(), _
vKeyValuePair(Of Integer, String))
End Function
Keine Kommentare »
07.07.11 (Windows)
XP-Modus Bessere Optik dank 24bit Farbtiefe
Viele werden es vielleicht schon gesehen haben, das der XP-Modus vom Windows Virtual PC
einfach Häslich aussieht.
Alles wirkt irgendwie verpixelt.
Doch was ist Schuld dadran?
Die 16 bit Limitierung die von der Zugriffsmethode auf den XP-Modus, nämlich RDP (Remote Desktop Protocol) kommt.
Das lässt sich leider nicht ganz abschalten den 32 bit sind nicht möglich, mit einen Trick aber wenigstens 24 bit und das sieht schon mal deutlich besser aus.
Dazu müsst ihr bloß ein par Richtlinien konfigurieren und wie das funktioniert erkläre ich jetzt in dieser schritt für schritt Anleitung.
- Start und Ausführen dort gpedit.msc eingeben.
- Nun sich dur volgende punkte durchwählen: Computerkonfiguration – Administrative Vorlagen – Windows-Komponente – Terminaldienste – Maximale Farbtiefe einschränken
- — Die Richtlinie aktivieren und 24bit auswählen.
Nun sollt euer Windows deutlich besser aussehen und etwas arbeitsfreundlicher sein.
Keine Kommentare »
30.06.11 (VB.Net)
Wer Diese Meldung bekommt möchte wahrscheinlich mit process.start(C:\Temp\MeinBild.tif) eine Datei in seien VB.NET Project öffnen.
Wenn aber Kein Programm oder nur das Windows-Standardprogramm mit dem Dateityp verknüpft ist bekommt man diese Fehlermeldung.
Folgender Code zeigt wie es richtig geht:
Dim proc As New Process
Dim ProcessStartInfo As New ProcessStartInfo
ProcessStartInfo.ErrorDialog = True
ProcessStartInfo.UseShellExecute = True
ProcessStartInfo.FileName = "C:\Temp\MeinBild.tif"
proc.StartInfo = ProcessStartInfo
proc.Start()
Keine Kommentare »
23.06.11 (Allgemein)
Wer keine umständliche Toolbar mochte, und trotzdem mit nur einem Click, eine Übersetzung der Webseite auf der er sich gerade befindet. Kann mit folgender Zeile als Lesezeichen schnell die aktuelle Seite Übersetzen:
Gogle translate Bookmarklet
javascript:window.location='http://translate.google.de/translate?js=n&prev=_t&hl=de&ie=UTF-8&layout=2&eotf=1&sl=auto&tl=de&u='+window.location;
Keine Kommentare »
18.02.11 (Allgemein)
Vielleicht gibt es ja noch mehr wie mich, die Probleme haben mit Ihrer Tastenbelegung bei der Maus. Funktioniert der Klick mit der mittleren Maustaste nicht? Sind Die Sondertasten nicht belegt? Für al diese probleme habe ich eine möglichkeit gefunfden die Mausfunktionen zu ändern denn die Antwort darauf heißt XMouseButtonControl.
Hier noch der Link zum Entwickler: http://www.highrez.co.uk/
und der Download link: http://www.highrez.co.uk/downloads/XMouseButtonControl.htm
Keine Kommentare »
15.10.10 (Windows)
So Mein erster Beitrag wird sich heute mit der Upgrade Funktion von Windows beschäftigen.
Vorallem wer das glück hat nach dem erwerb einer kleineren Windowsversion im besitz einer OEM Vollversion oder MSDN Lizenz gekommen zu sein , wird sich vielleicht schon geärgert haben. Den mit dem Key zu seiner Professional* Version sein olles Windows 7 Home Premium zu upgraden geht einfach nicht.
Als erstes müssen wir uns also einen Key besorgen mit dem das Upgrade funktioniert.
Dies ist einfacher als gedacht den auf jeder Windows7 DVD ist eine Datei mit den Standard Produkt Keys. Diese solltet ihr unter “ CDLAUFWERKSBUCHSTABEN:\sources\product.ini “ finden .

Windows Standard-Key
Mit diesem Key also das was hinter „Professional=“ in der product.ini steht, das Anytime Upgrade durchführen. Am sichersten natürlich ohne Internetverbindung (Damit Microsoft nicht rummeckern kann).
Nach erfolgreichem Upgrade nur noch in der Systemsteyerung Regestrieren wählen und euern Produkt Key eingeben.
Alternativ geht auch “ Windows-Taste + Pause“ und ganz unten „Produkt Key ändern“ wählen.
Am ende nur noch Windows über das Internet aktivieren.
So, nun noch das obligatorische vor dem allen solltet ihr eure Daten sichern für Folgeschäden bin ich nicht haftbar und bei Nebenwirkungen fragen sie ihren Arzt oder Apotheker 🙂
*Funktioniert natürlich auch für alle andern Versionen
Keine Kommentare »