siedenburg : Klassische irreführende Berichterstattung der *-BILD. Es geht hierbei nicht um dieses Watchever-gedöns sondern um http://www.netzkino.de
Beiträge von florian0
-
-
Die Funktion die ich da oben gepostet hab heist auch nicht ImageWait sondern WaitImage ...
Gruß
florian0 -
Einfach weitere IFs hinzufügen:
Code- WaitImage(ByRef X, ByRef Y, X1, Y1, X2, Y2, ImgFile, ImgFile2)
- {
- loop
- {
- ; Erstes Bild
- ImageSearch, X, Y, X1, Y1, X2, Y2, %ImgFile%
- EL := ErrorLevel
- if(EL = 2)
- {
- Msgbox Can't find file %ImgFile%
- break
- }
- if(EL = 0)
- Break
- ; Zweites Bild
- ImageSearch, X, Y, X1, Y1, X2, Y2, %ImgFile2%
- EL := ErrorLevel
- if(EL = 2)
- {
- Msgbox Can't find file %ImgFile%
- break
- }
- if(EL = 0)
- Break
- ; 100ms warten
- Sleep 100
- }
- }
-
-
Klingt wie ne Datenbank-Anbindung ...
-
Wenn du "Lautstärkemixer öffnen" drückst, siehst du nur das Standart Interface. Wenn du mitm Linksklick auf den Lautsprecher gehst, siehst du alle aktiven Interfaces:
Da auf Mixer drücken und du siehst das ausgewählte Interface.
-
Man kann unter Windows ja im Lautstärkeregler nachschauen welches Programm an welches Interface gebunden ist. Schau mal nach wohin Chrome gebunden ist ... ansonsten gehn mir die Ideen aus xD
-
Google hat auch ein paar mehr Server und ein gut strukturiertes Netzwerk.
BTT: Windows ... ich bin raus ^^. Unter Linux hätte ich dir vll. noch helfen können, aber von Windows Servern hab ich zu wenig Ahnung.
> Wie schon mehrfach vorgeschlagen, Lunixxa hat einige Erfahrungen mit DDoS & Windows Servern. -
Weißt du denn auf welchem Port der DDoS kommt?
Welches Server-OS? -
Ein Router bringt auch nichts. Der Router leitet alles an den Server weiter. Entweder platzt der Router, die Leitung oder der Server dahinter. Was wirklich hilft ist ne intelligente Firewall-Lösung die DoS-Attacken erkennen kann. Zum Beispiel Hyperfilter: Erkennt DoS und blockt ggf. Traffic für einen Zeitraum.
-
Hast du das Ding als Standart-Ausgabe-Gerät eingestellt?
Sonst kanns nicht gehen. -
Falls das so ist (kann ich als weniger Fussball-Interessierter ja nicht sagen), kommt das durch die Medien total anders über. Meistens, wenn über Schlägereien oder Randalismus berichtet wird, ist mindestens eine Ultra's Fahne dabei. Und die bedeckt dann noch den ganzen Bildschirm.
Ich kann mich dem Kommentar von SL4X nur anschließen ...
(siehe auch Kommentar an powerteacher)In meiner ehm. Schulklasse war mal einer, der hat immer von seinen tollen Erlebnissen mit den Ultra's erzählt. Hier ne Mülltonne angezündet, da randaliert, dort einen zusammen geschlagen ...
-
Virus.Jeefo.A hatte ich vor kurzem auch ... schreckliches Ding. Hat alle Exe-Dateien auf allen Paritionen, sämtlichen USB-Sticks und sogar Netzlaufwerken infiziert.
Das Ding schreibt einen Loader in jede Exe und sichert somit, dass der PC niemals desinfiziert werden kann (Den Loader kann man erkennen, bei jedem Ausführen einer Exe, wird diese um ein paar Byte kleiner).PC komplett platt machen ist die einzige Methode das Teil wirklich loszuwerden. Sicher alles was dir wichtig ist. Nur keine Exe Dateien, weil dann geht das Spiel wieder von vorne los.
Gruß
florian0 -
Hiho,
ich bin gerade dabei mir ein kleines eigenes CMS zu basteln. Zur Zeit ist jede Unterseite eine Klasse gekapselt die eine Basisklasse (für verschiedene Funktionen und Parameter, z.B. Menu Eintrag) implementiert. Zur Zeit wird das ganze manuell in der index.php eingetragen und das möchte ich gerne abändern.
Ich hatte überlegt, dass ich automatisch alle Klassen im Ordner einbinde und in ein Array instanziere. Daraus kann ich dann das Menu generieren und automatisch je nach angefragter Seite, diese anzeigen ...
Nur an der Umsetzung haperts jetzt. Dateien auflisten und includen ist kein Ding, aber instanzieren?
Meine Theorie wäre alles includen und dann per get_declared_classes die durch alle Klassen loopen und mit get_parent_class prüfen ob die Klasse die Basisklasse implementiert. Dann kann ich ja mit:eine neue Instanz auf Basis des Klassennamens aus get_declared_classes erstellen.
Klingt aber in meinen Ohren wie ... naja ne scheiß Lösung halt
EDIT: Keiner ne Idee oder Ahnung von sowas?
Ich hatte noch ne andere Idee, dass ich die allen Dateien einen Header verpasse, denn ich dann auslesen kann. ielleicht reicht es auch wenn ich die Datei gleich der enthaltenen Klasse benenne. Das klingt aber auch nicht sonderlich performant.
Das kann man ja ggf. in einer Datenbank cachen. Dann hat eben der Admin eine Übersicht über alle installierten Seiten (die über oben genanntes Verfahren gesucht werden) und kann diese aktivieren und deaktivieren. Normale Besucher bekommen nur die Seiten die auch in der Datenbank sind.Gibts da bessere Methoden?
Gruß
florian0 -
Verwendet man in einer Form rechenintensive Vorgänge ohne diese in einem Thread auszulagern, dann reagiert die Form für die Zeit der Ausführung des Vorgangs nicht. Dies lässt den Nutzer glauben, das Programm hätte sich aufgehängt.
(Typisches Beispiel: Der WindowsEditor mit großen Dateien)Es empfiehlt sich also diese Vorgänge in einen Thread auszulagern. Manchmal möchte man während des Vorgangs Informationen in der Form ausgeben. z.B. wenn man eine größere Datei verarbeitet eine ProgressBar aktualisieren.
Versucht man von einem anderen Thread auf die Steuerelemente des WindowThreads zuzugreifen, wird dieser Zugriff standartmäßig verweigert.Diese Meldung lässt sich unterdrücken.
Dies ist aber in etwa so sinnvoll wie, wenn man öfter einen Autounfall hat und sich beschwert, dass man ständig den Airbag ins Gesicht bekommt. Und anstatt weniger Unfälle zu bauen, baut man lieber den Airbag aus.
[Quelle: Stackoverflow]Die richtige Lösung ist Invoking. Man prüft vor dem Zugriff auf das Steuerelement, ob man einen thread-übergreifenden Vorgang durchführen würde (ein Invoke nötig ist).
Dazu erstellt man eine Methode, welche die gewünschte Funkion ausführt (Man bezeichnet solche Methoden auch als getter und setter-Methoden).
Die Funktion überprüft, ob ein Invoke nötig ist, und wenn ja fordert sie einen Invoke beim Steuerelement an und gibt sich selbst als Callback an. Das heist die Funktion ruft sich solange selbst auf, bis der Vorgang sicher durchführbar ist.
Da wir hier mit einem Callback arbeiten, brauchen wir auch noch ein delegate.C- private delegate void SetProgressBarValueCallback(int value);
- private void SetProgressBarValue(int value)
- {
- // Invoke nötig?
- if (progressBar1.InvokeRequired)
- {
- // Invoke nötig
- progressBar1.Invoke(new SetProgressBarValueCallback(value));
- }
- else
- {
- // Kein Invoke nötig - Vorgang sicher durchführbar
- progressBar1.Value = value;
- }
- }
Jetzt kann man in seinem eigenen Thread SetProgressBarValue(10) aufrufen und die ProgressBar verändert sich ohne Probleme.
Gruß
florian0 -
Hintergrund:
Das mit den 3000 ist ein typisches Telekom Konzept. Wenn die Leitungswerte unter einem gewissen Wert liegen, wird ein 6000er DSL automatisch auf 3000 umkonfiguriert. Der Anschluss läuft dann nurnoch mit 3000 egal wie viel theoretisch gehen würde (Der Kunde erfährt das oftmals nicht, meines Wissens wird nichtmal der Preis reduziert ...).
Ob man das ändern lassen kann, kann ich dir nicht sagen.Andere Netzbetreiber mieten zwar die Leitungen der Telekom, sind aber nicht von diesem Konzept betroffen. Die Telekom garantiert damit halt maximale Stabilität.
Gruß
florian0 -
Dieses Snippet zeigt die Verwendung von Threads mit und ohne Parameter.
Ohne Parameter
C- static void Main(string[] args)
- {
- // Thread erstellen
- Thread myThread2 = new Thread(new ThreadStart(MyThread));
- // Thread starten
- myThread2.Start();
- Console.Read();
- }
- // Funktion für den Thread (ohne Parameter)
- private static void MyThread()
- {
- Console.WriteLine("Dies ist mein Thread ohne Parameter");
- }
Mit Parameter
Als Parameter ist in .NET-basierten Sprachen nur object zu gelassen. Desweiteren darf man nur einen einzigen Parameter übergeben. Bevor der Parameter wieder verwendet werden kann, muss dieser ein seinen alten Datentyp "zurück-gecastet" werden.C- static void Main(string[] args)
- {
- // Thread erstellen
- Thread myThread = new Thread(new ParameterizedThreadStart(MyThreadWithParam));
- // Thread mit Parameter starten
- myThread.Start("Dies ist mein Thread mit Parameter");
- Console.Read();
- }
- // Funktion für den Thread (als Parameter ist nur object zugelassen)
- private static void MyThreadWithParam(object arg)
- {
- // Parameter als string casten
- string str = (string)arg;
- // Parameter ausgeben
- Console.WriteLine(str);
- }
Gruß
florian0 -
Erstelle die pictureBoxen von Hand über ne FOR-Schleife im Konstruktor der Form. Bei der Erstellung steckst du die in ein Array. Dann kannst du über pb_array[Slot] auf die PictureBox zugreifen
Dann noch durch die ItemListe gehen und die Items updaten (oder durch das pb_array und dann schauen ob an einem Slot ein Item ist).Wäre so die einzig sinnvolle Methode um Ultimative Code-Redundanzen zu vermeiden ...
Gruß
florian0 -
Ich hab Visual Studio 2010 Prof. Die 2012er ist totaler Müll. Lahm wie sonst was und verbuggt (Ein klassischer RC von Microsoft eben).
Als einziges Add-In hab ich vsTortoise damit ich SubVersion in der IDE verwenden kann ... sonst hab ich noch nix gefunden, was IDE nicht schon selbstständig kann.
Gruß
florian0 -
Ich zähl mal alles auf, was mir noch so auffällt ...
- Wenn du vom Passwort eh den MD5-Hash berechnest, brauchst du das nicht durch escape-string quetschen. (Solange du den MD5-Hash per PHP berechnest. Wenn du das per SQL regelst, musst es es escapen).
- LIKE ist für einen direkten Vergleich ungeeignet. LIKE ist für Suchvorgänge da. Verwende lieber WHERE login = '$username'Logischerweise sollte ein Username nur ein einziges mal vorkommen. Das Result des Querys sollte deshalb auch nur eine einzige Zeile sein (oder keine, wenn der Username nicht existiert)
Daher macht hier eine while-Schleife prinzipell keinen Sinn. Außerdem brauchst du den Usernamen des Results nicht nochmal prüfen (außer du vertraust dem SQL-Server nicht).Besser (ungetestet) :
PHPGruß
florian0