Laden...

Forenbeiträge von alpi Ingesamt 17 Beiträge

13.04.2008 - 20:09 Uhr

Selbiges hier, schmiert nach dem starten leider ab 🙁

13.04.2008 - 19:20 Uhr

Ach Mensch, jetzt wollte ich mich gerade dran machen, habe dann aber in gurgells Beitrag gelesen, dass es obfuscated sei (was ja nicht stimmt). Hab es deswegen gelassen weil ich dachte, bei obfuscated kann ich nichts machen, und mir gleich die Lösung angeschaut.. naja dann halt beim nächsten mal 😁

23.03.2008 - 16:31 Uhr

Hallo erstmal 🙂

Da ich vorhabe, von PHP auf ASP.NET zu wechseln, habe ich mich mal etwas umgesehen und der Anbieter "Centron" wird desöfteren gelobt (wenn ich mich nich irre, hostet er ja sogar mycsharp oder guide2c#, oder beides?)

Für mich als Hobbyentwickler kommt da eigentlich vor allem dieses DotNet4All Paket von Centron in Frage, mehr brauch ich auch garnicht. Für dieses Paket "werben" mycsharp und Golo Rodens Seite ja auch und eröffnen verschiedene Angebote:

Erstmal das offizielle Angebot:
http://www.centron.de/html/content/developer_corner.html
mycsharp-Angebot:
ASP.NET Webspace mit Rabatt für myCSharp.de Benutzer
guide2c#-Angebot:
http://www.guidetocsharp.de/Centron.aspx

(Anm.: wenn ich von "offiziell" spreche, dann mein ich das Angebot auf Centrons Seite. Die beiden anderen sind natürlich auch offiziell 😉 . Ich denke man versteht, was gemeint ist ).

Leider stiftet das ganze bei mir etwas Verwirrung. Das Ganze läuft ja so ab, dass man bei allen 3 Varianten erstmal das offizielle Angebot bestellt und anschließend den Coupon von mysharp oder Golo angeben kann. So weit, so gut, jetzt die Fragen.

1.) Beim mysharp-Coupon wird erwähnt, dass bei diesem die Einrichtungsgebühr entfällt. Laut dem offiziellen Angebot entfällt diese aber so oder so .. ist das Datenblatt von mycsharp denn noch aktuell? (daraus resultutiert die nächste Frage: gilt der Preis von 6,95 noch? der offizielle ist ja 3 euro drüber).

2.) Obwohl nicht mal das offizielle Angebot eine Einrichtungsgebühr besitzt, muss diese trotzdem gezahlt werden, wenn der Coupon von guidetoc# genutzt wird? Der Coupon sollte doch eigentlich günstiger sein 😁

3.) Falls denn die Datenblätter noch aktuell sind, mal eine Zusammenfassung:

Das offizielle Angebot kostet 9,95€ mntl., hat 100mb Speicherplatz und 30 mb Datenbank, keine Einrichtungsgebühr.

Das Mycsharp Angebot kostet 6,95€ mntl., hat 200mb Speicherplatz und 30mb (?) Datenbank, keine Einrichtungsgebühr.

Golos Variante kostet 7,99€ mntl., hat auch 200mb, sogar 50mb Datenbank, kostet aber ca. 8€ Einrichtung.

Stimmt das?
Alle anderen technischen Daten sind wohl identisch?

Vielen Dank, würde mich über eine Antwort freuen.

22.03.2008 - 16:47 Uhr

"iArting"

laut google ist es noch nciht vergeben.

Jegliches "iWort" würde ich tunlichst vermeiden, ich weiß nichtmehr worums genau ging, aber Apple hat schonmal ausgeteilt deswegen. Es ging glaub ich um den Namen iPhone, an welchem Cisco eigentlich die Namensrechte hatte und ein Handy mit diesem Namen rausbringen wollte (und wer das iPhone dann später rausgebracht hat, wissen wir ja alle 😉 ... ).

21.03.2008 - 13:19 Uhr

Habe mir ebenfalls einen 4gb Stick geholt bei der Aktion (allerdings nen Corsair Voyager), da kann man echt nichts falsch machen! 🙂

Achso: bei dem Eingabeformular müsst ihr den Punkt mit der Werbung NICHT akzeptieren wenn ihr nicht wollt.

21.03.2008 - 11:12 Uhr

Leider konnte ich nichtmal die Stelle finden, die besagt, dass es überhaupt kommerziell nutzbar ist (was es aber definitiv ist laut FAQ). Vielleicht kann ja noch jemand was dazu sagen 🙂

20.03.2008 - 23:26 Uhr

Hallo erstmal 🙂

kurze Frage: Laut der FAQ auf microsoft.de ist es erlaubt, mit den Express Editionen kommerzielle Programme zu erstellen. Jetzt behaptet aber jemand, dies gelte nur für Privatpersonen, nicht für Unternehmen, d.h. diese dürfen damit nichts kommerzielles erstellen. Ist dies richtg? ich kann keinen entsprechenden Textausschnitt finden.

mfg

13.03.2008 - 20:32 Uhr

Also es geht um folgendes Rätsel:

Die Zahlen 1 bis 9 sollen lediglich durch Additionen auf die Summe 100 gebracht werden. Jede Zahl muss in der Rechnung genau einmal vorkommen. Zahlen zu verketten ist erlaubt (aus 3 und 2 die Zahl 32 machen, mehr als 2 Zahlen zu verketten ist allerdings sinnlos, dann ist man ja schon im 3 stelligen Bereich).

Beispiele: 3+45+6+7+8+9+21 oder 19+28+37+4+5+6 etc...

Ich wollte mathematisch beweisen, dass es garnicht möglich ist. Bin aber knapp gescheitert, bzw. steh gerade aufm Schlauch.
Würde ich jetzt ALLE Varianten, die existitieren, von einem Programm berechnen lassen und es käme nie 100 heraus, wäre der Beweis ja auch vollbracht. Nur wie würdet ihr das programmtechnisch lösen?

mfg

06.02.2008 - 01:33 Uhr

Mir ging es ähnlich wie dir (aufgrund von Zeitmangel tut sich momentan auch nicht viel), habe davor auch mit PHP gearbeitet.
Die Syntax beider Sprachen sind sich sehr ähnlich und stellenweise sogar identisch, damit wirst du nicht viel Zeit verschwenden müssen - Problem: das wars dann auch schon mit den Gemeinsamkeiten.
Klar, die Syntax zu lernen ist notwendig, aber wenn du dann mal weißt, wie Schleifen, Bedingungen etc. in C# aussehen, dann weißt du eigentlich noch garnichts über C#.
Ein weitaus größeres Problem ist imho das Verständis der Objektorientierung, die bei C# eigentlich bis ins kleinste Detail durchgezogen wird. Kann man bei PHP natürlich auch stellenweise verwenden, aber das ist, wie ich feststellen musste, in keinster Weise vergleichbar mit C#. Hier erstmal dahinterzusteigen und die Übersicht zu behalten, das ist nicht so einfach (und ich meine nicht das simple Erstellen und Benutzen eigener Klassen und Objekte, wie es in PHP auch möglich ist; sondern dass einfach alles, was du anstellst, letzten Endes auf Objekten basiert).
Aus diesem Grund würde ich dir empfehlen, beim Visual Studio zu bleiben. Denn die Controls, die du schon erwähnt hast, sind natürlich später auch Objekte, und ohne IntelliSense wäre man (ok, zumindest ich) da verloren. Das VS nimmt dir in einfach allem ne Menge arbeit ab, die du selbst garnicht machen wolltest, wenn du jetzt schon von all dem wüsstest. Das VS ist nicht mit Frontpage vergleichbar, der vom VS produzierte Code ist "sauber" (ich nehme mal an, du spielst auf das Codegewurschtel von Frontpage an) und es wäre sehr ermüdend, das alles selbst übernehmen zu müssen.
Ich würde dir erstmal das Galileo Openbook ans Herz legen (links in der Navi verlinkt), da hast du erstmal eine Menge Lesestoff darüber. Später ist das/die MSDN dann ein mächtiges Werkzeug, in welches man sich, von PHP kommend, aber erstmal einlernen muss. (persöhnlich kam ich mit php.net, also der Doku, einfacher zurecht).

Gruß

30.12.2007 - 14:32 Uhr

Was ist, wenn du dem Anfangs- und Endpunkt der Kurve die gleiche Steigung gibtst wie den daran anschliessenden Geraden? Dann fällt der Übergang weg.
Ich kann mich noch an die 11. Klasse oder so erinnern, da gab es in der Analysis desöferen die Aufgabe, dass man eine Kurve nahtlos in eine Gerade übergehen lassen musste.
Das ist zwar keine Lösung für die Erstellung deiner "Spezialkurve", aber vielleicht liegt dieses Ruckartige ja auch daran.

29.12.2007 - 17:29 Uhr

Wenn du magst, kann ich dir den nötigen input liefern, um das Programm auf weitere Steam-Spiele auszuweiten (du hast ja geschrieben, dass du kein Steam besitzt). Also DoD, css, tf2 etc.

17.11.2007 - 16:41 Uhr

Danke euch, so kann mans machen. Allerdings:

1.) Wäre es nicht sauberer, "testobj test;" in die Main() von program.cs zu schreiben? Das Gui hat ja mit der Bereitstellung nicht viel zu tun denke ich.

2.) Was mache ich, wenn ich mehr als ein Objekt nach diesem Schema brauche, die genaue Anzahl aber erst zur Laufzeit bekannt wird?

Danke

17.11.2007 - 14:57 Uhr

Hallo 🙂

Also nachdem ich das mit der Trennung von GUI und Anwendungsschicht wohl einigermaßen verstanden habe (mein erster Thread) und ein Beispiel umsetzen wollte, habe ich gemerkt, dass ich im Bezug zur oop doch noch Lücken habe (welche bei der oo-Programierung in PHP 5 nicht auftraten; jetzt weiß ich, warum PHPs Objektorientierung belächelt wird).

Eigentlich geht es "nur" um die Gültigkeit und Bekanntheit von Objekten.

Szenario:

Ich habe 3 Buttons in einer Form. Der erste Button erstellt ein Objekt und läd Daten einer Text.ini hinein. Der zweite Button soll genau dieses Objekt verarbeiten (es sollten also Felder und Methoden zugänglich sein) und der dritte Button soll eine Bildschirmausgabe erzeugen. Ein Anfänger wie ich probiert also sowas hier:

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
             testobj test = new testobj();
             test.load_file("/path/test.ini");
        }

        private void button2_Click(object sender, EventArgs e)
        {
              test.name = "newtest.ini";
              test.addlines("timeout = 30");
        }

        private void button3_Click(object sender, EventArgs e)
        {
              label1.Text = test.show(title);
        }
    }

Ihr werdet gleich bemerken, geht ja garnicht! Das Objekt ist bei button2/3_click unbekannt. Ich habe schon mehrmals Google bemüht und bin auf statische, bzw. Singleton-Klassen gestoßen. Im gleichen Atemzug habe ich jedoch gelesen, dass man die Verwendung dieser möglichst vermeiden sollte, es würde von schlechtem Stil zeugen.
Aber ich denke, mein Vorhaben ist doch in jedem 2. Programm umgesetzt, wie löst man es also richtig?

Klar, ich könne das Objekt außerhalb der Klammern direkt unter "public partial class Form1 : Form {" erzeugen lassen und es wäre dann überall Verfügbar.
Nur: später beim Programmstart wird das Objekt dann immer erzeugt, egal ob ich es danach brauche oder nicht (weil ich zb. button 1, 2 und 3 nie benutze, sondern lieber den imaginären button 4, der was anderes anstellt). Deshalb dachte ich, das Objekt erst beim Klickevent zu erzeugen wäre am besten (die clickevents selbst zu verschachteln, scheint nicht zu funktionieren).

Danke schonmal.

10.11.2007 - 22:33 Uhr

Original von herbivore
[...] und ein bisschen Geduld mitbringst

Ich denke, das sollte eine Grundvoraussetzung sein, wenn man sich ernsthaft damit auseinandersetzen will 🙂

Der andere Thread hat nochmal etwas mehr Verständnis erbracht, ist sehr behilflich.
Werde das Wissen jetzt nochmal mit learning-by-doing festigen, wenn dann noch Fragen sind, meld ich mich wieder 🙂

Danke nochmals!

10.11.2007 - 21:50 Uhr

Hallo Golo,

erstmal muss ich sagen, dass mir dein Guide gut gefällt, hat schonmal viele Fragen geklärt. Ich habe zwar beim Lesen zur Kenntnis genommen, dass an einer neuen Version gearbeitet wird. Da man jedoch in beiden Versionen anhand der Rotschrift darauf hingewiesen wird, welches die aktuelle und welches die sich in Entwicklung befindliche Version ist, habe ich mich beim lesen noch für die alte Version entschieden (doch wie ich gerade sehe, ist die neue auch schon vorangeschritten, werde einen Blick drauf werfen 😉 ).

10.11.2007 - 21:37 Uhr

Hallo herbivore,

Tut mir leid das mit dem Punkt 1.2, die Sache mit Datetime hab ich nun verstanden und braucht hier nichtmehr erwähnt zu werden.

Jetzt zur anderen Geschichte:

Okay, also packe ich meine Klassen in jeweils eigene Dateien (oder eine große KlassenSammlung.cs, wie auch immer).
Wenn ich die Namespace-Sache richtig verstanden habe, muss ich die "externen" Klassen dann aber entweder in den selben Namespace schreiben wie die program.cs und form1.cs sind (das macht das Visual Studio ja automatisch habe ich gerade bemerkt), oder aber ich erstelle sie unter einem neuen Namespace und muss bei form1.cs bzw. program.cs diesen dann per using eintragen, stimmt das soweit?

Mit program.cs habe ich ja dann nichts am Hut und lasse diese Datei erstmal Ruhe.

Jetzt nochmal zur Trennung von Datenverarbeitung und GUI:
Ich habe das etwas anders gemeint im Startpost (ist aber mein Fehler, hätte genauer beschreiben sollen). Dass man Klassen woanders definiert als in der form1.cs, das hab ich bisher auch immer so gemacht.
Aber angenommen, ich habe die (gerade ausgedachte) Klasse "xmltool" mit der Methode "XmlToDatabase()", welche den Inhalt der im Parameter erhaltenen xml-Datei in eine Datenbank schreibt (soll kein Sinn haben, nur als Beispiel dienen 😉 )

So wie du es erklärt hast, schreibe ich dann in die form1.cs:

private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog dlgOpen = new OpenFileDialog();
            if (dlgOpen.ShowDialog() == DialogResult.OK)
            {
            xmltool Test = new xmltool;
            Test.XmlToDatabase(dlgOpenFilename);
            }
        }

Jetzt zu dem, was ich eigentlich meinte: die Datenverarbeitung findet dann ja trotzdem in der form1.cs statt, weil ich die xmltodatabase-Methode ja genau dort aufrufe .. kann man das so hinnehmen?

nochmals Danke.

10.11.2007 - 20:58 Uhr

Hallo Leute,

auch wenn der Thread hier bei dem ein oder anderen von euch nur ein müdes lächeln hervorbringen wird, habe ich mich entschlossen mich mal hier anzumelden um ein paar kleine Unklarheiten zu beseitigen.
Ich habe vor kurzem mit C# angefangen und mich auch in allgemeine Dinge eingelesen (damit meine ich in etwa das, was beim guidetoc# unter guide -> c# zu finden ist), außerdem habe ich mich etwas mit der objekt-orientierten Programmierung befasst (ist ja Pflicht bei c#). Das Wissen ist jetzt allerdings wie Puzzleteile in meinem kopf, und ich schaffe es nicht wirklich, diese zusammenzusetzen. Also dann fange ich mal an:

Einige der Unklarheiten traten erst bei der Programmierung von Forms auf (deswegen auch in diesem Forum gepostet);
Ich habe nun plötzlich 2 cs-Dateien (program.cs, form1.cs). Soweit, so gut. Doch welche Teile von meinem Programm kommen jetzt in welche Datei? Klar, Controls etc. kommen logischerweise in die form1.cs, sie gehören ja zur Form.
Jetzt ein erstes konkretes Beispiel:

Ich lasse über einen Button einen Openfiledialog öffnen:

private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog dlgOpen = new OpenFileDialog();
            if (dlgOpen.ShowDialog() == DialogResult.OK) 
            {
            // Platzhalter
            } 
        }

Jetzt will ich die ausgewählte Datei weiterverarbeiten. Angenommen, es ist eine zip-Datei, dann z.B. mit der sharpziplib öffnen, oder es ist eine xml-Datei, dann irgendwas auslesen.
Ich könnte diesen Code zur Weiterverarbeitung ja einfach dort einfügen, wo "// Platzhalter" steht und alles weitere dort eintragen. Doch haben solche Datenverarbeitungsprozesse überhaupt etwas in der form1.cs verloren? Oder sollte das besser in der program.cs stattfinden? (ich meine mal gelesen zu haben, die form1.cs sei nur für Anzeigesachen vorgesehen).
Ich weiß, dieses Wissen ist essentiell, doch viele Tutorials im Netz beinhalten immer nur den Sourcecode für bestimmte Operationen, nicht wie das Programm selbst strukturiert ist.

--

Eine weitere Frage: wie ich gesehen habe, kann ich einfach irgend einem Ausgabemedium (z.B. einem Label) das Aktuelle Datum zuweisen:

label1.Text = DateTime.Now.Tostring();

Warum funktioniert das einfach so? Wenn c# streng der oop folgt, müsste doch Datetime auch ein Objekt sein .. welches ich zuvor aber nicht mit "new" instanziert habe, sondern einfach so benutzen kann wie es aussieht?

Ich hoffe, ihr haut mir für die Fragen nicht den Kopf ab 😉

Danke schonmal.