Beiträge von SBIKA

    Genau dasselbe Problem hab ich auch!

    Es ist schon ein paar Tage her, dass ich mir das Programm angesehen habe. Ich dachte eigentlich, dass eines der Updates das Problem behoben haette.


    Ich hatte zwei unterschiedliche Programm Abstuerze mit der Version 0.18 BETA.
    Der erste (System.IO.DirectoryNotFoundException) wurde dadurch ausgeloest, dass kein Ordner mit dem Namen "cc", bzw. "cc/include" vorhanden war. Das Programm stuerzte in "editor_TextArea_TextEntered" ab. Der Fehler war nicht sonderlich schwer zu finden und ist auch nicht sonderlich schwer zu beheben, deswegen gehe ich auf diesen Fehler vorerst nicht weiter ein.


    Der zweite Fehler (System.InvalidOperationException) tritt, wie von H4rd_B4se beschrieben, bei einer vollkommen leeren Datei auf.

    Zitat

    native ja(nein, doch);
    ja(,

    Beim Abschreiben dieser zwei Zeilen stuerzt das Programm beim Schreiben des Kommas ab.
    Der Fehler tritt in der selben Funktion auf (editor_TextArea_TextEntered). Es wird abgefragt, ob das Zeichen ein "," ist und, ob KEINE "{" in der Naehe ist, danach werden irgend welche Strings konkateniert (concat), ein neuer "System.Windows.Controls.TextBlock" erstellt, zu einem "System.Windows.Documents.InlineCollection" der String ", " hinzugefuegt (dieser Schritt wird zwei mal gemacht, oder in einer kleinen if-else) und dann wird, nach dem Erstellen eines "ICSharpCode.AvalonEdit.CodeCompletion.InsightWind", versucht den Inhalt von "PawnStar.MainWindow::InsightWindow" (per set_Content) zu setzen. An dieser Stelle stuerzt das Programm mit der Begruendung "Bei dem angegebenen Element handelt es sich bereits um das logische untergeordnete Element eines anderen Elements. Führen Sie zuerst eine Trennung durch."/"Specified element is already the logical child of another element. Disconnect it first" ab.
    Die Reihenfolge ist im Quelltext eventuell ein wenig anders, oder teilweise so gar nicht zu sehen, da ich dies Anhand der mir zur Verfuegung stehenden Informationen zusammen geschustert habe.


    Bei der deutschen Fehlerbeschreibung habe ich nicht viel gefunden und hilfreich erschien mir beim Ueberfliegen nichts von den deutschen Suchresultaten, deswegen empfehle ich nach der englischen Fehlerbeschreibung zu suchen, sofern es bei der Fehlerbehebung Probleme gibt.

    Mostey liegt mit seiner Aussage, dass es sich um C# handelt nicht ganz so weit weg, wie es hier dargestellt wird.
    Bei der Programmiersprache, die hier verwendet wird handelt es sich tatsaechlich nicht um C++, sondern um das von Microsoft fuer die .NET Plattform entwickelte C++/CLI.
    Zum Lernen ist C++/CLI nicht gerade optimal. Ich empfehle dem Themenersteller sich eine bessere Sprache zu suchen, entweder 'richtiges' C++, C, oder eine 'richtige' .NET Sprache, wie C#, bzw. Visual Basic .NET.
    Da das Interesse an C-Syntax aehnlichen Sprachen besteht empfehle ich C#, oder, falls es nichts ausmacht, dass man nicht einfach seine Anwendungen zusammen klicken kann, wie man es in .NET Sprachen gewoehnt ist, sondern Anfangs nur Konsolenanwendungen/Kommandozeilen-Anwendungen schreibt/schreiben kann empfehle ich C, oder C++.


    Zu dem eigentlichen Problem:

    1>Rechner.cpp(8): error C2337: "STAThreadAttribute": Attribut wurde nicht gefunden.
    1>Rechner.cpp(12): error C2653: 'Application': Keine Klasse oder Namespace

    Als erstes einmal fehlt in der Rechner.cpp ein "using namespace System;", da STAThreadAttribute in dem Namespace ist.
    In der selben Datei ist auch ein "using namespace System::Windows::Forms;" noetig, da Application in dem Namespace ist.
    Alternativ kann man auch "System::STAThreadAttribute" und "System::Windows::Forms::Application" schreiben, anstatt der using namespace Direktiven.


    1>Rechner.cpp(6): error C2871: 'Rechner': Es ist kein Namespace mit diesem Namen vorhanden

    Kann Folge einer Umbenennung sein. Entweder in Form1 'Testss2' zu 'Rechner' umbenennen, oder in Rechner.cpp das "using namespace Rechner" zu "using namespace Testss2".


    1>c:\users\key\documents\visual studio 2010\projects\rechner\rechner\Form1.h(124): error C2039: 'TextFeld_TextChanged': Ist kein Element von 'Testss2::Form1' (..)
    1>c:\users\key\documents\visual studio 2010\projects\rechner\rechner\Form1.h(124): error C2065: 'TextFeld_TextChanged': nichtdeklarierter Bezeichner

    Sind die beiden Dateien, die gepostet wurden der gesamte Quelltext? In C# mit der Visual Studio IDE werden die Funktionen, die der Nutzer erstellen moechte automatisch als leere Funktionen erstellt. Da die Funktionen fehlen nehme ich an, dass Visual Studio die Funktionen bei C++/CLI Anwendungen nicht automatisch anlegt, oder, dass die Funktionen einfach in einer anderen Datei angelegt wurden und diese vergessen wurde per #include einzufuegen. (Ich gehe aber vom ersten aus, da Visual Studio nicht gerade eine Prioritaet auf C++/CLI setzt. Visual Studio 2010 hatte z.B. keinen funktionierenden IntelliSense fuer C++/CLI.)
    Auf jedenfall fehlen dem Compiler die Funktionen "TextFeld_TextChanged" und "Form1_Load".


    In C++ verwendet man -> und in C# . ;)

    In C++ wird bei Objekten ebenfalls ein Punkt verwendet, wenn es sich nicht um einen Zeiger handelt.

    Die Fragen hoeren sich nach typischen 'ich will aber nicht googlen!' Fragen an.

    Wo kann man das richtig Lernen?

    Man kann es dadurch lernen, dass man versucht ein Programm damit zu schreiben. Dabei kann man sich durch eine sehr grosse Anzahl an teilweise guten, teilweise schlechten, Tutorials (die man in einer grossen Anzahl an unterschiedlichen Tutorial-Typen (Text-Basiert, Text-Basiert mit Bildern unterstuetzt, Audio basiert und Video basiert) im Internet finden kann) unterstuetzung suchen.

    Wie stellt man eine MySQL Verbindung her?

    In dem man das gleiche macht, wie ich es bereits bei der ersten Frage beschrieben habe.


    Wenn man mit Visiual Basic eine Form Anwendung macht... Kann man mit der dann arbeiten?

    Nein. Der Papst hat sich offiziell dazu ausgesprochen, dass man nicht mit einer Form Anwendung, die mit Visiual Basic erstellt wurde arbeiten darf.

    d.h dann Button 1 bei Press wird eine Progressbar gestartet ist die geladen wird an die MySQL db. Ein query gesendet...?


    Wie macht man das?

    Ist das jetzt so eine 'gib mir die Loesung'-Frage? Ich werde es trotzdem erklaeren: Indem bei dem Button 1 Press eine Progressbar gestartet wird, diese dann veraendert wird, und sobald die Fertig ist, eine Verbindung zur MySQL db hergestellt wird und der Query gesendet wird.


    Da google nicht Deine Staerke zu sein scheint hier ein Link, den ich nach ein paar Sekunden google Nutzung gefunden habe: http://openbook.galileocomputing.de/einstieg_vb_2012/
    Das Buch hat sogar ein eigenes Kapitel ueber Datenbank Verbindungen: http://openbook.galileocomputi…_vb_2012/1959_08_001.html


    Wenn Du weniger allgemein gefasste Fragen hast, also ein konkretes Problem, bei dem Du nicht weiterkommst, trotz, dass Du bereits Stundenlang google benutzt hast, um das Problem zu loesen, kannst Du ja noch einen Versuch machen einen Sinnvollen Thread zu erstellen. ;)

    Natürlich funktioniert das. Teste es doch.

    Die samp.exe stellt nur die Moeglichkeit der Eingabe von IP und Port bereit. Soweit ich weiss wurden die Parameter (-c, -n, usw.) in der Vergangenheit mal von der samp.exe unterstuetzt, aber mittlerweile ist es nur die IP und der Port, welche per Parameter an die samp.exe uebergeben werden. Die (-c, -n, usw.) Parameter werden nur noch von der samp.dll benutzt.


    Wenn du etwas in der Registry veränderst, kann es sein, dass es nach Veränderungen / Updates des Spiels das Spiel zum Abstürzen bringt. Der Parameter hingegen wird das Spiel nicht zum abstürzen bringen, da dieser, falls er mal nicht mehr unterstützt wird, vom Programm einfach ignoriert wird.

    Wenn man ausversehen in der Registry alles loescht, was mit den einem zustehenden Rechten loeschbar ist, dann kann es durchaus schon einmal vorkommen, dass das ein oder andere Programm nicht mehr ganz so funktioniert, wie es sollte, aber mal im Ernst, um das hinzubekommen, muss man schon einiges an multiwlligem Zerstoerungswillen mitbringen. Ich denke aber nicht, dass Kalcor den Registry Key mit dem Namen 'PlayerName' in Zukunft fuer irgendwelche anderen Sachen missbrauchen wird, als fuer den Namen des Spielers. ;)
    Das Argument, dass bei einem Update des Spiels etwas durch die von einem selbst durchgefuehrten Aenderungen eventuell etwas kaputt geht, trifft ueberigens genau so gut auf die Parameter zu, da auch der Parameter in Zukunft fuer irgendwelche anderen Sachen missbraucht werden kann, als fuer den Namen des Spielers.
    Wenn man bedenkt, dass Kalcor explizit keinen Support fuer die Parameter gibt, und auch nicht die Moeglichkeit der Parameter in die samp.exe eingebaut hat (die im anderen Thread von Gredsoft aufgefuehrten Parameter stimmen vielleicht fuer alte Versionen von samp und fuer die samp.dll, aber nicht fuer die samp.exe), kann man auch bei den Parametern nicht von einem 'offiziellen Weg' reden. Da erscheint mir der Registry-Key mit dem recht Eindeutigen Namen 'PlayerName', doch ein wenig Zukunftssicherer, als ein Parameter mit dem Namen '-n'. :P


    Die SA:MP .exe ändert die Registry nicht, das macht die samp.dll wenn sie in die GTA SA Exe injektet wurde.

    Ist mir neu. Welchen Registry key aendert die samp.dll, denn? Ich habe keinen Aufruf von Registry Funktionen innerhalb der samp.dll gefunden, wozu sollte sie auch die registry beim start aendern? Der Samp-Browser kuemmert sich schliesslich um das lesen/schreiben vom Namen des Users in die registry und uebergibt den Namen spaeter an die GTA-SA exe als Startparameter, wodurch es keinen Bedarf mehr fuer die samp.dll gibt die Registry nach dem Namen zu durchsuchen, oder sogar den Namen zu schreiben.


    Warum hier versucht wird den Leuten grosse Angst vor der Registry zu machen verstehe ich ebenfalls nicht. Das Argument 'wenn man keine Ahnung hat, macht man eventuell etwas kaputt' trifft vielleicht zu, aber warum man, dann versucht Angst vor der Registry zu machen und nicht allgemein Angst vor dem Programmieren, oder allgemein Angst vor dem Anfassen eines Computers, ist fuer mich unverstaendlich.

    mir ist eben aufgefallen, dass man in pawn garkeinen Null-Character am Ende braucht.
    ...
    Stimmt das jetzt oder was habe ich übersehen?

    Man braucht eine Null Endung. In Deinem Fall wurde der Code in der main() Methode ausgefuehrt?
    Das einfachste Test-Szenario, dass belegt, dass eine Null Endung notwendig ist sieht wie folgt aus:
    new eins[3];
    for(new i=0; i < 3; i++)eins[i] = '#';
    new teststring_zwei[6];
    for(new i=0; i < 6; i++)teststring_zwei[i] = '.';
    new drei[3];
    for(new i=0; i < 3; i++)drei[i] = '!';
    print(teststring_zwei);Das Ergebnis ist "......###", wenn es in main() ausgefuehrt wird.


    Alternativ kann man auch das von Dir gezeigte Beispiel nehmen und den Quelltext einfach in eine Funktion 'test' schieben, welche von main() aus aufgerufen wird. Da der Code nun nicht mehr in main() ausgefuehrt wird erhaelt man einen verfaelschten String.


    Hier eine etwas umfangreichere Version (des im ersten Post gezeigten Quelltextes), welcher die letzten ein, oder zwei, 'Buchstaben'/Werte ausgibt (die, die nicht angezeigt werden duerften, wenn tatsaechlich ein 'unsichtbarer Null-Character', oder sonstiger Schutzmechanismus vorhanden sein wuerde) :
    #include <a_samp>
    stock test(){
    new teststring[6];
    printf("'%c' (0x%x) '%c' (0x%x)",0x2020,0x2020,0x2020,0x2020);//Der 0te String. Ignoriert ihn.
    print("\n\tTest beginnt hier:");
    for(new i=0;i<6;i++)
    {
    teststring[i]='.';
    }
    printf("strlen: %i, teststring: %s",strlen(teststring),teststring);


    // Compiler weigert sich:
    //printf("'%c' (0x%x) '%c' (0x%x)",teststring[6],teststring[6],teststring[7],teststring[7]);
    // Deswegen das selbe in anders:
    #emit addr.pri 0xFFFFFFE8// teststring[7]
    #emit add.c 0x1C
    #emit push.pri
    #emit push.pri
    #emit addr.pri 0xFFFFFFE8// teststring[6]
    #emit add.c 0x18
    #emit push.pri
    #emit push.pri
    #emit push.c 0x0 // 0ter String
    #emit push.c 0x14
    #emit sysreq.c printf
    #emit stack 0x18
    }
    main(){test();}Beachte, dass in der Konsole ASCII Zeichen ausgegeben werden. Aus 0x2020 wird 0x20, welches dem Leerzeichen entspricht. Deswegen habe ich dort auch die Hexadezimale Ausgabe eingefuegt, um die korrekten Werte (ueber 255) anzuzeigen.
    Waehrend meiner Tests war die maximale Laenge 2 Zeichen laenger, als erwuenscht. Der Erste Wert war konstant (bei mehreren Aufrufen von test(), nach veraendern des Quelltextes und neuladen des Scripts kann sich die Variable aendern) und ist vermutlich die Instanz-Variable/Struktur der Pawn-Maschine. Der zweite Wert aendert sich bei jedem Aufruf der test() Funktion innerhalb von main(). Der dritte Wert war stetig entweder groesser als 255, oder exakt 0.

    Problem gelöst.

    Waere gut, wenn man zumindest dazu schreibt, was die Loesung des Problems war, anstatt einfach nur zu schreiben, dass das Problem geloest sei.


    Tatsache, sobald ich das Programm mit der Release Einstellungen kompiliere, hat das Laden keine UTF-8 Einstellung mehr.

    Das wird das Problem mit den Umlauten sein. Pawno und SAMP nutzen die Standard Codepage Codierung (Westeuropa Codepage 1252, http://de.wikipedia.org/wiki/Windows-1252#Tabellen ), welche (meines Wissens nach alle) 'Single Byte Character Set's (SBCS, http://de.wikipedia.org/wiki/Single_Byte_Character_Set) sind, also maximal 1 Byte pro Zeichen verwenden.
    UTF-8 ist ein sogenanntes 'Multibyte Character Set' (MBCS, http://de.wikipedia.org/wiki/MBCS) und nutzt bis zu 4 Byte pro Zeichen, wobei alles, was nicht ASCII ist (im Deutschen zum Beispiel die Umlaute, Eurozeichen usw.) durch mindestens ein weiteres Byte codiert wird.
    Der grosse A-Umlaut wird bei Codepage 1252 in das Byte mit dem Hexadezimal Wert 'C4' umgewandelt.
    Mit UTF-8 wird aus dem grossen A-Umlaut ein zwei Byte langes 'C3 84'.


    UTF-8 hat den Vorteil, dass es unabhaengig von der Einstellung des Computers gelesen werden kann. Oeffnet man eine im UTF-8 Format gespeicherte Kyrillische Datei auf einem Westeuropaeischen Computer (und erkennt das Programm, dass es sich um eine UTF-8 codierte Datei handelt), so kann man, sofern man eine Schriftart hat, die Kyrillisch unterstuetzt, diese Datei Problemlos oeffnen. Oeffnet man eine Kyrillische, mit Codepage codierte Datei, wie sie Standard maessig vom Windows Notepad erstellt werden, auf einem Westeuropaeischen Computer, bekommt man nur As und Os mit Kringel. (Vergleiche die C... bis F... Zeilen auf http://de.wikipedia.org/wiki/Windows-1252#Tabellen mit den C... bis F... Zeilen auf http://de.wikipedia.org/wiki/Windows-1251 dann wird klar warum.)


    Das Problem bei diesem Programm, welches einige beschrieben haben, scheint zu sein, dass die Zeichen zwar in UTF-8 umgewandelt werden, aber entweder vergessen wird ein BOM ( http://de.wikipedia.org/wiki/UTF-8#Byte_Order_Mark ) zu setzen, oder, dass beim Einlesen der Datei das BOM ignoriert wird. (Wenn es in Notepad falsch angezeigt wird ist das BOM nicht gesetzt.)
    Wenn es in diesem Programm und in Notepad korrekt angezeigt wird, dann beziehen sich die Beschwerden, die man hier liest sicherlich nicht auf den Editor, sondern auf das, was dem Spieler in SAMP, oder auf der Konsole des SAMP-Servers angezeigt wird, da SAMP kein UTF-8 versteht und der Spieler nur 'komische Zeichen' sehen wuerde, wenn man UTF-8 in SendClientMessage/print/usw. verwenden wollte. In dem Fall sollte man dem Compiler eine Standard codierte (Codepage-codierte) Datei uebergeben (Umwandlung von UTF-8 in Codepage kann fehlschlagen), anstatt einer UTF-8 codierten Datei.


    PS.: Wenn man etwas ausliefert, sollte man nochmal moeglichst alle Funktionen des Programms mit der Version testen, die man ausliefern moechte, anstatt nur die private Version zu testen. Ausserdem sollten die Compiler Einstellungen fuer die Debug Version moeglichst die der Release Version entsprechen. Dann ist es auch leichter die Probleme seiner Kunden mit der Debug Version nachzuvollziehen.

    (Sofern sich der Leser wundert: Ich weiss, dass der Link zur Zeit nicht vorhanden ist. Ich habe diesen Beitrag geschrieben, als der Link noch erreichbar war.)


    Finde die neue, nicht offizielle, Version besser.
    Wieso manche die andere Version als professioneller aussehend empfinden kann ich nicht nachvollziehen. Finde die original Homepage nicht sehr ansprechend.
    Die Bilder (auf die man als erstes aufmerksam wird) auf der original Seite sind z.B. viel zu dunkel, bei der neuen Version sind die Bilder hell und sehen viel professioneller/einladender aus. Es sind sicherlich die selben Bilder, die man auch auf der Original Seite klein an der Seite sehen kann, aber auf der original Seite sieht man als erstes die dunklen, nicht einladend wirkenden Bilder im Header.


    Bezueglich des weit nach unten scrollens, was Drasko angesprochen hat, war ich mir ebenfalls unsicher, ob es gewollt ist, stimme Drasko aber zu, dass es besser aussehen wuerde, wenn man nur bis zum unteren Rand des blauen Streifens scrollen koennte.
    Auf kuerzeren Seiten besteht ein aehnliches Problem, der untere blaue Streifen ist, z.B. bei den Angeboten bei mir in der mitte des Bildschirms.
    Man koennte den blauen Streifen am unteren Bildschirmrand fixieren, damit man diesen immer sehen kann, wobei ich mir nicht sicher bin, ob so ein fixierter Footer mit in das Designkonzept reinpasst.


    Der footer enthaelt auch Informationen, die fuer Kunden von Nutzen sind. Bei der Frage 'Wann habt ihr offen und wo muss ich hin?' muss man erst die untere Leiste finden. Da aber der footer eine kleinere Schrift hat, als z.B. der Header, und dieser ganz am Ende einer Seite ist, erwartet man, dass die Informationen im Footer unwichtig sind und uebersieht diese Informationen unter Umstaenden.
    Im Bezug darauf ist die original Seite etwas besser. Man sieht sofort auf der Hauptseite, was die Firma anbietet, wo die Verkaufsraeume zu finden sind und in welchem Zeitraum geoeffnet ist. Etwas aehnliches ist fuer die neue Version auch nicht verkehrt, ansonsten wuerde ich die Links mit in den Header integrieren, da sie meinem Gefuehl nach, im Footer etwas schlecht aufzufinden sind.


    Da der Onlineshop noch nicht fertig ist, kann man dort nicht viel bewerten, aber komisch finde ich den Unterpunkt 'Shop' unter 'Onlineshop', ist etwas verwirrend, da man letztlich auf der selben Seite landet. Man kann den Unterpunkt 'Shop' genau so gut weglassen. Wenn der Shop implementiert wird, ist auf der Hauptseite des Onlineshops eine bildliche Uebersicht ueber die Kategorien nicht fehl am Platz. Nur der Text als Navigation ist zumindest auf der Hauptseite des Shops nicht so schoen anzusehen.


    Den Maschinenverleih sollte man vielleicht als Unterpunkt des Heimwerkercenters machen. Auf die Angebote Seite passt das meiner Meinung nach nicht so gut, ich hatte bei den Angeboten eher Rabattaktionen und aehnliches erwartet.


    Den Text im Heimwerkercenter sollte man noch etwas bearbeiten. Damit meine ich nicht den Inhalt (den habe ich mir nicht durchgelesen ;) ), aber die Aufmachung vom Text. Der Text sieht einfach nur dahin geschrieben aus, ohne Formatierungen. Der Text ist sicherlich der selbe, wie im Original, aber im Original wurde der Text ein wenig besser auf das Design abgestimmt. (Aber auch nicht sehr gut - auf der Original Webseite ist bei mir in dem Text eine grosse Luecke, die nicht so gut aussieht.)


    Mehr konnte ich wegen den Wartungsarbeiten an der neuen Version nicht bewerten. Auch, wenn durch die derzeitige Wartung ein paar meiner Punkte nicht mehr zutreffen, hoffe ich, dass mein Beitrag etwas zur Verbesserung beigetragen hat, oder beitragen wird. ;)

    In dem Fall wuerde ich vorschlagen die Server zu untersuchen und saemtliche Schadware zu entfernen. Dies haette schon vor Monaten geschehen sollen.


    Fuer mich hat 4uclan saemtliche Serioesitaet, die sie haetten haben koennen (aber fuer mich nie hatten), verloren.
    Wie kommt es, dass man als Firma jemanden anstellt, der Schadsoftware im Namen der Firma verteilt, und man trotz dessen sich nicht die Zeit nimmt, um saemtliche Schadsoftware vom Server zu loeschen und den Server sorgfaeltig zu untersuchen?
    Der Vorfall ist nun ein paar Monate her und es befindet sich immer noch Schadsoftware auf dem Server. Ich werde auch nicht verraten, wo diese sich befindet. Sie sind schliesslich ein Hosting Unternehmen, wo IT-Sicherheitsfachleute angestellt sein sollten (!), welche mit Leichtigkeit verdaechtige Dateien finden koennten, aber, da schon einige Zeit vergangen ist, wage ich zu bezweifeln, dass bei 4uclan derartiges Personal angestellt ist. Wenn man selbst preisguenstiges Servicepersonal fuer Umsonst sucht..


    Warum erlaubt man einem 'Supporter' ueberhaupt Daten auf den Firmen Server hochzuladen? Angesichts dessen, dass sich noch Dateien von diesem 'ehemaligen Supporter' auf dem Server befinden kann man davon ausgehen, dass der Server nicht genuegend nach dem Vorfall untersucht wurde. Man kann von Glueck reden, wenn der Server keine Hintertuer/Backdoor hat.


    Ausserdem frage ich mich, warum sich auf dem offiziellen Teil der Homepage keine Rubrik 'Software' finden laesst, wenn 4uclan auch Software anbietet? Zu viel Angst, dass man die alten FTP-Stealer Tools sehen koennten, die noch nicht vom Server geloescht wurden, und, dass diese jemand wieder erkennt? Oder Programmiert noch immer der selbe die Programme fuer 4uclan, wie vorher?


    Glaubwuerdigkeit hat 4uclan fuer mich sowieso schon verloren und, dass der Themenersteller nichts mit 4uclan zu tun haben soll, ist fuer mich ebenfalls schwer zu glauben. Zu viele Zufaelle auf einem Haufen. Vor nichtmal einem Monat hatte er sich bezueglich des Quelltextes eines Anti-Cheat-Clients erkundigt, macht Werbung, verschenkt Gutscheine fuer 4uclan und wirbt ploetzlich fuer ein (angeblich von) 4uclan entwickeltem Anti-Cheat-Client.


    Problem bei 4uclan ist auch, dass zuviele Leute meinen die Firma dem sa-mp Board gegenueber repraesentieren zu muessen und die Firma dies erlaubt. Wie viele (unbezahlte..) Supporter (mit anscheinend Server-Zugang, wo kann ich mich als Supporter melden? Will auch Zugang zu dem Server.) braucht eine kleine Firma auf einem einzigen Internet-Forum? Dieser vor 5 Tagen registrierte, 10 Beitraege, Account "Hosting_4uclan" traegt nicht gerade zur Serioesitaet bei. Lifestyler schafft es doch auch seinen original Account zu benutzen und muss sich nicht hinter einem Kryptischen Firmen Namen als Account Namen verstecken, wenn er fuer sein Unternehmen wirbt.


    Ich wage zu bezweifeln, dass, so wie sich 4uclan hier repraesentiert, 4uclan ein serioeses Unternehmen ist.
    Fuer mich ist das Thema aber an dieser Stelle beendet.
    OT: *Hust* Zu viele Virenschleudern in meiner Umgebung. *Schnief*

    Sicher, dass der Themenersteller kein 4uclan Angestellter ist und tatsaechlich das Programm gekauft hat?
    Beim Ansehen folgender Posts bekommt man den Eindruck, dass es sich um einen Angestellten handelt:
    4uClan Dienstleistung Gutschein für euch
    4uClan verlost eine 1.70Meter große GTA V Säule !!
    [ SUCHE ] Anti Cheat
    4uClan Dienstleistung Gutschein für euch


    Zufaellig hat der Themenersteller selbst vor wenigen Wochen nach einer Moeglichkeit gesucht, um einen Launcher mit Anti-Cheat zu basteln:
    VB Samp Connect
    Und er hat sich explizit bezueglich des Quelltextes eines Anti-Cheats erkundigt und nachher gefragt, wie man den Anti-Cheat zum laufen bringt: http://forum.sa-mp.de/gta-frem…ient-vb-net-6#post1723344 (Antwort Post anthaelt Link.)


    Vor zwei Wochen nichtmal einen fast fertigten Anti-Cheat zum laufen bringen koennen und nun einen 'eigenen' Anti-Cheat Client vorstellen? Es kann sicherlich sein, dass das alles absoluter Zufall ist und der Themenersteller absolut nichts mit 4uclan zu tun hat, oder er innerhalb von zwei Wochen mal eben einiges dazu gelernt hat und selbst ein vollkommen selbstgeschriebenes, nicht kopiertes, anti-cheat schreibt, aber meiner Meinung nach ist das eine unglaubwuerdige Anhaeufung von Zufaellen, die fuer beide dieser Szenarien noetig sind.
    Inwiefern das Design dem 'NSC' Projekt von 'Feet' entspricht weiss ich nicht, da ich keine Bilder von dem alten Projekt gefunden habe. (Hat jemand noch Bilder davon zum Vergleich?)


    Hinzu kommt der fragwuerdige Ruf von 4uclan. Die Webseite ist nicht gerade bekannt dafuer, Software anzubieten, die frei von Spyware/Malware ist:
    ( zabus: maddin , ... )
    SAMP Konfigurations Hilfe
    Die Original Datei war auf 4uclan.de gehostet. Vielleicht ist ein Admin/Mod so nett und macht einen Screenshot vom ersten Post, um dies zu bestaetigen? (Der Post wurde geloescht und ist deswegen nicht fuer normale User einsehbar.)
    Vielleicht ist der Themenersteller sogar ein neuer Account von 'Tobias17', ich bitte die Moderation die Accounts hinsichtlich dessen zu ueberpruefen.


    Egal, ob es ein Doppelaccount von einem 4uclan-Sprecher ist, oder nicht, ich empfehle niemals Software von 4uclan zu kaufen, oder herunter zu laden, da die Besitzer entweder ihren Hochlademechanismus/Server nicht im Griff haben und jeder Schadsoftware auf ihre Seite hochladen kann, oder die Besitzer/Programmierer von 4uclan wissentlich Schadsoftware verbreitet haben. Beide dieser Moeglichkeiten sprechen nicht unbedingt fuer Vertrauenswuerdigkeit und Kompetenz. Eine dritte Moeglichkeit, wie die Schadsoftware auf den 4uclan Server gekommen ist sehe ich nicht.


    Dazu kommt, dass es meines Wissens nach niemals eine Offizielle Stellungnahme von 4uclan zu dem Vorfall gab, sondern einfach der Link zur Schadsoftware rausgenommen wurde und so getan wurde, als ob niemals (wissentlich, oder unwissentlich) Schadsoftware von der Seite verbreitet wurde.
    Vielleicht moechte sich ein 4uClan.de Inhaber/Angestellter bezueglich der Schadsoftware, die von der Webseite verbreitet wurde aeussern, oder habe ich eine Stellungnahme uebersehen?
    _uniQue_: (Wende mich diesbezueglich an _uniQue_, da: "Bewerbungen bitte nur als PN an _uniQue_ oder E-Mail", [ SUCHE ] www.4uClan.de -> sucht Verstärkung fürs Team)



    Angesichts dessen, dass die Seite Schadsoftware verbreitet hatte und es nichtmals eine oeffentliche Stellungnahme dazu gab sollte man m.M.n. ueber ein Werbeverbot fuer die Seite nachdenken, aber ich bin in der gluecklichen Position das nicht entscheiden zu muessen. ;)

    Aber wie mach ich jetzt das die Bass.dll auch startet? Oder kann ich die irgendwie einbauen das die bei jedem Stream auttomatisch startet und ich die nit in jeden Button einzelnd schreiben muss sondern z.b im Form_Load

    Der Download von "Bass.NET" enthaelt einige Beispiel-Programme und eine ausfuehrliche (Englische) Dokumentation. Zusaetzlich hat ArTeX bereits einen Link zu einem Deutschen Tutorial gepostet.
    Wenn nur die bass.dll und nicht Bass.NET verwendet werden soll kann folgender Post weiterhelfen: http://www.vbforums.com/showth…y-music-and-sound-effects
    Das Tutorial, das Beispiel Programm fuer die bass.dll und die beim Bass.NET Download enthaltenen Beispiel Programme, sowie Dokumentation, sollten reichlich Informationen bieten, um das Projekt mit der Bass-Bibliothek (original bass.dll, oder Bass.NET) umzusetzen.

    Aber was mir im Nachhinein aufgefallen ist, nachdem auch die ProgressBar ihre Arbeit richtig macht, dass der Text sich nicht verändert. Kannst du mir sagen warum?

    http://stackoverflow.com/quest…date-label-text-in-vb-net
    Falls die Englisch Kenntnisse nicht so gut sind: Das Label wird nicht nach jeder kleinen Aenderung neu 'gemalt', sondern nur als 'dreckig' markiert, sodass es beim naechsten Fenster-Update neu gezeichnet wird. Vergleichbar mit den Bildern pro Sekunde, die man in Spielen hat, es kann sich viel waehrend eines Frames/Bildes aendern, aber anstatt das aktuelle Bild fuer jede kleine Aenderung (einmal fuer Physik, einmal fuer Kontroll-Kommandos vom Benutzer, einmal fuer ..., und das fuer jedes einzelne kleine Objekt aus dem das Bild besteht) zu aktualisieren/neu zu berechnen, wird das Bild erst nach Verarbeitung aller Aenderungen aktualisiert.


    Um auch waehrend laengerer Operationen immer ein aktuelles Bild zu haben, kann man entweder Multi-Threading anwenden, oder (der einfachere Weg), dem Nutzer-Interface-Element mitteilen, dass es sich sofort neu malen soll. Unter Visual Basic/.NET teilt man dies dem Nutzer-Interface-Element durch die Refresh() Funktion mit. Wenn also nun nach jedem Label1.Text = 'Test' ein Label1.Refresh() eingefuegt wird, sollte der Text sich direkt aktualisieren.


    Fuer die Multi-Threading Variante gibt es unter dem obigen Link ebenfalls ein Beispiel, welches mit dem System.ComponentModel.BackgroundWorker realisiert wurde. Ein Beispiel fuer diese Methode (mit scheinbar komplettem Quelltext) ist hier zu finden: http://msdn.microsoft.com/de-d…cs-lang=vb#code-snippet-3
    Ich empfehle, aber die Refresh() Methode, da diese fuer Programmier-Anfaenger leichter zu verstehen/umzusetzen ist.


    Wie kann ich den eingestellen Pfad zum downloaden der Bilder mit dem Bildnamen verbinden?
    Habe es so gemacht:
    ...
    Aber das funktioniert nur wenn ich zum Beispiel den ganzen Link zusammen eingebe, so z.B.: "http://forum.sa-mp.de/wcf/images/tumek_breadfish/logo.png"

    Enthaelt str1, denn die korrekte Zeichenfolge (http://forum.../tumek_breadfish/)? Wenn die ini-Datei erst erstellt werden musste enthaelt diese noch keine Daten. Man sollte also, bei fehlender ini-Datei die Datei mit Standard-Werten fuellen.


    Ob die korrekte Zeichenfolge enthalten ist, kann man zur Laufzeit durch Debugging herausfinden. Die einfachste Form vom Debugging ist die Textausgabe. Wenn die Applikation in Visual Studio gestartet wird, zeigt Visual Studio ein 'Output'/'Ausgabe' Fenster am unteren Bildschirmrand an. In dieses kann man mit der in System.Diagnostics.Debug enthaltenen Funktion Print(), oder einer der in der selben Klasse (Debug) enthaltenen Write* Funktionen, Text ausgeben lassen. Ansonsten kann auch eine einfache MessageBox als Textausgabe seinen Nutzen erfuellen.
    Mehr Informationen zum Debugging: http://msdn.microsoft.com/de-d…ary/vstudio/awtaffxb.aspx


    Fuer Anfaenger sicherlich ein wenig komplizierter, als das einfache Debugging durch Textausgabe ist die Nutzung des (auch in der Express Version von Visual Studio integrierten) Debuggers: http://msdn.microsoft.com/de-d…ary/vstudio/k0k771bt.aspx (Habe den Link nur der Vollstaendigkeit wegen angegeben. Kann diesen aber nach kurzem ueberfliegen einem Anfaenger nicht empfehlen. Gibt sicherlich weitaus einfacher erklaerte und auf Visual Basic zugeschnittene Tutorials zum Debugger. Weil es beim Visual Basic/.NET Debugging oft/Hauptsaechlich um die Bedienung der Oberflaeche von Visual Studio geht, bzw. das zurechtfinden in selbiger essentiell ist, sind eventuell auch Video/Bild-Tutorials an dieser Stelle nicht falsch.)

    Sessions werden vom Server aus verwaltet.
    Die Clienten können es nur lesen und nicht schreiben das kann nur der Server.
    ...
    Cookies können jedoch vom Clienten verändert werden.

    Der Inhalt der Sessions kann nicht vom Client gelesen werden, nur die zugewiesene ID.


    Das Cookies manipuliert werden koennen ist m.M.n. nicht unbedingt ein Sicherheitsproblem (solange man sich dessen bewusst ist).
    Denn:
    Wenn ich das Passwort und den Usernamen in den Cookies setze, und der 'Angreifer' seine Cookies manipuliert, kann er genau soviel anrichten, wie er beim Login mit der $_POST variable anrichten konnte, was bei korrekter Implementierung des Login Vorgangs keinerlei Auswirkungen auf die Sicherheit haben sollte. Der User autorisiert sich also jedes mal erneut, wenn er die Webseite aufruft, wohingegen man bei Sessions annehmen kann, dass die gespeicherten Username und Passwort korrekt sind. Zugegeben diese Methode mag umstaendlich wirken, aber ein Sicherheitsproblem ist es nicht, solange man sich bewusst ist, dass der Client jedes mal neu Autorisiert werden muss.


    scheint zu stimmen das UDP auch aufgebaut wird, wenn nichts dahinter ist.

    UDP ist ein Verbindungsloses Protokoll. TCP (ueber welches auch HTTP laeuft) sendet schon beim Verbinden Daten (http://de.wikipedia.org/wiki/T…rotocol#Verbindungsaufbau), wohingegen UDP auch nur dann Daten sendet, wenn der Programmierer Datenpackete senden moechte.
    TCP ist Vergleichbar mit einer netten Person, die einen kennt und 'Hallo' sagt, auch wenn sie nicht mit einem reden moechte.
    Waehrend UDP eher die unmotivierte Kassiererin ist, die die Konversation auf "Das macht 3,50." reduziert. ;)
    Meine Vergleiche werden zum Abend/zur Nacht hin immer abwegiger und phantasievoller. ^^

    Jap danke dir, aber eine frage hab ich noch, ich hab das mit den varis noch nicht ganz so verstanden,
    wenn ich jetz aus dem formular das rausbekomme $_POST["port"] wie kann ichg das dann in eine vari welche ich in allen seiten benutzen kann?

    Ohne, dass die $_POST variablen erneut angegeben werden muessen? Falls ja: Sessions (http://www.php.net/manual/de/session.examples.basic.php), oder Cookies (http://www.php.net/manual/de/function.setcookie.php). Sessions senden dem Client ebenfalls cookies, aber der Vorteil von Sessions ist, dass die eigentlichen Daten auf dem Server liegen und der Client somit nicht weiss, welche Daten gespeichert sind, der Nachteil ist Sessions muss man ein wenig besser absichern, als cookies. (Sicherheit von Sessions: http://www.php.net/manual/de/session.security.php) Falls nein: $_POST variablen sind bereits global.

    Das heisst, dass es in deinem Programm bislang mit keinem Webradio funktioniert hat?
    Da Du nach dem naechsten Webradio gefragt hast, habe ich angenommen, dass es mit EinsLive funktioniert hatte.


    Wenn es mit EinsLive funktioniert hat, dann lies Dir nochmal meinen letzten Beitrag sorgfaeltig durch, denn in dem habe ich sogar die URL fuer Technobase, und den Weg, wie ich an die entsprechende URL gekommen bin beschrieben.

    Wenn Winamp, oder ein anderes Programm auf dem Rechner ist, welches Internet Radios abspielen kann, dann einfach mal die URLs ausprobieren.
    Die Angegebene URL wird nicht funktionieren, da es sich um eine Webseite handelt, die fuer Browser gedacht ist. Wenn Du einen Rechtsklick auf die Webseite machst und dir den Quelltext anzeigen laesst, siehst Du, was Winamp und co. beim Aufrufen der URL sehen werden. Richtig. Text. Damit kann Winamp nichts anfangen. Man muss die URL zum Audio-Stream finden. Manchmal kann es ganz leicht sein den HTTP-Audio-Stream zu finden, manchmal schwerer.
    Bei der letzten URL, die Du gepostet hast, ist dies ganz einfach, da die URL zum Audio-Stream ein HTTP-Stream ist und im Quelltext der von Dir angegebenen Seite (unter "jwplayer('mediaplayer').setup({") zu finden ist:

    Code
    'file': 'http://tb.mp3.stream.tb-group.fm/;stream.nsv',


    Wenn sich kein HTTP-Stream finden laesst, kann man sein Glueck ueber google (sendername m3u) probieren. Wie gesagt, m3u Dateien (eigentlich als Playlist gedacht) werden oft fuer Internet-Radios verwendet. M3u Datei speichern, mit Notepad oder aehnlichem oeffnen, URL kopieren und mit Winamp ausprobieren, ob dieser das Internet-Radio mit der URL findet. (Oder die m3u Datei mit *CreateFile() oeffnen, um zu sehen, ob Bass.NET das m3u Format fuer Dich korrekt interpretiert.)


    PS.: Nicht vergessen, dass der Stream auch geschlossen werden muss, um unnoetigen Daten-Verkehr zu vermeiden. Wie das bei dem Bass Interface funktioniert, weiss ich nicht.