1. Forum
    1. Unerledigte Themen
  2. Artikel
  3. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  4. Blog
    1. Artikel
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Forum
  • Blog-Artikel
  • Seiten
  • Erweiterte Suche
  1. StageTwo - Deine Wohlfühloase
  2. Mitglieder
  3. florian0

Beiträge von florian0

  • 100 Filme im Internet – gratis und legal

    • florian0
    • 7. Februar 2013 um 14:34

    siedenburg: Klassische irreführende Berichterstattung der *-BILD. Es geht hierbei nicht um dieses Watchever-gedöns sondern um http://www.netzkino.de

  • Suche eine Datei (Autohotkey)

    • florian0
    • 6. Februar 2013 um 22:57

    Die Funktion die ich da oben gepostet hab heist auch nicht ImageWait sondern WaitImage ...

    Gruß
    florian0

  • Suche eine Datei (Autohotkey)

    • florian0
    • 6. Februar 2013 um 21:31

    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 
      }
    }
    Alles anzeigen
  • Suche eine Datei (Autohotkey)

    • florian0
    • 6. Februar 2013 um 21:22
    Code
    WaitImage(ByRef X, ByRef Y, X1, Y1, X2, Y2, ImgFile)
    { 
      loop
      { 
        ImageSearch, X, Y, X1, Y1, X2, Y2, %ImgFile%
        EL := ErrorLevel
        if(EL = 2)
        { 
          Msgbox Can't find file %ImgFile%
          break
        }
        if(EL = 0)
          Break
        Sleep 100 
      }
    }
    Alles anzeigen
  • Suche eine Datei (Autohotkey)

    • florian0
    • 6. Februar 2013 um 21:12

    Klingt wie ne Datenbank-Anbindung ...

  • AA VMS4 als externe Soundkarte verwende (halb fertig) Problem!

    • florian0
    • 5. Februar 2013 um 15:39

    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.

  • AA VMS4 als externe Soundkarte verwende (halb fertig) Problem!

    • florian0
    • 5. Februar 2013 um 15:25

    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

  • DDoS trotz geschlossener ports?

    • florian0
    • 5. Februar 2013 um 12:19

    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.

  • DDoS trotz geschlossener ports?

    • florian0
    • 5. Februar 2013 um 11:26

    Weißt du denn auf welchem Port der DDoS kommt?
    Welches Server-OS?

  • DDoS trotz geschlossener ports?

    • florian0
    • 5. Februar 2013 um 01:18

    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.

  • AA VMS4 als externe Soundkarte verwende (halb fertig) Problem!

    • florian0
    • 4. Februar 2013 um 19:45

    Hast du das Ding als Standart-Ausgabe-Gerät eingestellt?
    Sonst kanns nicht gehen.

  • Ultras No-Go oder No Ultras No-Go?

    • florian0
    • 4. Februar 2013 um 17:57
    "@powerteacher"


    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.

    "Generell"


    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 ...

  • Viele Exen Funktionieren nichtmehr

    • florian0
    • 1. Februar 2013 um 14:08

    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

  • [PHP] CMS Subpage-implementierung

    • florian0
    • 26. Januar 2013 um 20:49

    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:

    PHP
    $class = 'testklasse'
    $instance = new $class;

    eine neue Instanz auf Basis des Klassennamens aus get_declared_classes erstellen.

    Klingt aber in meinen Ohren wie ... naja ne scheiß Lösung halt :D

    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

  • Threadsicherer Zugriff auf Steuerelemente (Invoking)

    • florian0
    • 25. Januar 2013 um 13:05

    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.

    Code
    Ungültiger threadübergreifender Vorgang: Der Zugriff auf das Steuerelement progressBar1 erfolgte von einem anderen Thread als dem Thread, für den es erstellt wurde.

    Diese Meldung lässt sich unterdrücken.

    C
    CheckForIllegalCrossThreadCalls = false;


    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;
        }
    }
    Alles anzeigen

    Jetzt kann man in seinem eigenen Thread SetProgressBarValue(10) aufrufen und die ProgressBar verändert sich ohne Probleme.


    Gruß
    florian0

  • Verarscht Telekom mich mit meinem Internet

    • florian0
    • 24. Januar 2013 um 16:30

    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

  • Einen Thread erstellen (mit Parameter)

    • florian0
    • 24. Januar 2013 um 11:39

    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");
    }
    Alles anzeigen


    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);
    
    
    }
    Alles anzeigen

    Gruß
    florian0

  • Inventar nachstellen ?!

    • florian0
    • 20. Januar 2013 um 17:10

    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

  • Plugins Visual 2012

    • florian0
    • 20. Januar 2013 um 13:03

    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

  • [PHP]MYSQL Login

    • florian0
    • 19. Januar 2013 um 17:13

    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) :

    PHP
    $result = $db->query($query);
    if(!$result)
    {
       // Query fehlgeschlagen
    }
    else
    {
       $row = $result->fetch_assoc()
    
       if ($row != NULL)
       {   
          if ($row['passwd'] == $passwort)
          {
             // Login Ok
          }
          else
          {
             // Passwort falsch
          }
       }
       else
       {
          // Username existiert nicht
       }
    
    }
    Alles anzeigen

    Gruß
    florian0

  1. Datenschutzerklärung
  2. Impressum