Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von blutiger_anfänger
Thema: Suche aktives Projekt ähnlich Codewars
Am im Forum: Smalltalk

Schiffe versenken ist leider auch offline. (bzw. es besteht keine Möglichkeit mehr seine KI hochzuladen.)

ProjektEuler macht aber auf jeden Fall schon mal Spaß. Jetzt fehlt nur noch was, was etwas mehr Richtung Zweikampf geht - sprich KIs verschiedener Spieler gegeneinander antreten lässt.

Thema: Platzhalter/Variable für Methoden [==> Strategie-Muster]
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Da hatte sich wohl ein Copy/Paste-Fehler eingeschlichen, aber dennoch hast du mein Anliegen ja erkannt. Danke für die Antwort, herbi! :)

Thema: Platzhalter/Variable für Methoden [==> Strategie-Muster]
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

ich stehe vor folgendem Problem:

Mir sind zwei Methoden gegeben, die eine Zahl zurückgeben und identische Parameter annehmen.


private static int Preis1(string element)
        {
            int preis = 0;
            //Berechnugen Typ 1
            return preis ;
        }

private static int Preis2(string element)
        {
            int preis = 0;
            //Berechnugen Typ 2
            return preis ;
        }

Diese beiden Methoden möchte/soll ich nicht ändern.

Nun habe ich eine sehr komplexe Methode geschrieben, in der die erste der beiden oben genannten Methoden Verwendung findet.


private void gesamtPreisAusrechnen()
{
      int gespreis = 0;
      //Berechnungen ...
      gespreis += Preis1("produkt a");
      //Berechnungen ...
      gespreis += Preis1("produkt b");
      //usw.
}

Die ganze Gesamtberechnung müsste ich auch noch mal mit den Werten von Preis 2 machen.
Ich möchte aber ungerne den ganzen Code doppelt kopieren oder bei jedem Aufruf von Preis1 in gesamtPreisAusrechnen eine if-else-Abfrage machen.

Mit kam folgende Idee, jedoch weiß ich nicht, wie ich das umsetzen kann oder ob man sowas überhaupt in die Richtung umsetzen kann.


private void gesamtPreisAusrechnen(bool preis2Verwenden)
{
      private voidhalter preisMethode = null;
      if (preis2Verwenden)
      {
              preisMethode = Preis2;
      }
      else
      {
              preisMethode = Preis1;
      }

      int gespreis = 0;
      //Berechnungen ...
      gespreis += preisMethode("produkt a");
      //Berechnungen ...
      gespreis += preisMethode("produkt b");
      //usw.
}

EDIT: Gibt es eine Art Platzhalter für Methoden mit dem selben Parameter?

Viele Grüße,
Raffi

Thema: Suche aktives Projekt ähnlich Codewars
Am im Forum: Smalltalk

Hallo,

ich bin über folgenden Thread StChase - Ein kleiner Wettkampf zwischen Programmierern und den Beitrag von Levion auf das Projekt Codewars aufmerksam geworden.

Zitat von Levion
Das ganze erinnert mich an Codewars. Allerdings funktioniert Codewars über Sockets mit einem entsprechenden Protokoll. Das Projekt ist richtig Klasse. Man programmiert Bots die man mit bestimmten Fähigkeiten ausstattet und aufeinander loslassen kann. Die Map konnte dabei verschiedene Hindernisse wie Mauern und Wasser enthalten. Im Gegensatz zu Ant! oder deinem Projekt funktioniert CodeWars mit allen Programmiersprachen die Sockets beherrschen. Wer hat da nicht mal Lust den hochnäsigen PHP-Bot in den Boden zu stampfen :D

Leider wird das Projekt nicht mehr richtig weitergeführt :(

Ich finde das ganze sehr interessant, jedoch ist das Projekt nicht mehr aktiv. Kennt zufälligerweise jemand von euch solch ein Projekt, welches noch eine aktive Community hat?
(Besonders interessant finde ich die Programmiersprachen unabhängige Umgebung von Codewars.)

Viele Grüße,
Raffi

Thema: SoundCloud Downloader
Am im Forum: Projekte

Guten Morgen,

das Programm erinnert mich stark an meinen Soundcloud Downloader.
( http://www.net-blog.net/blog/index.php/2010/11/15/update-soundcloud-downloader-version-1-2/ )

Vielleicht könnt ihr euch ja auch hier noch ein paar Anregungen holen. Die im Blog vorgestellte Version ist leider nicht mehr ganz aktuell.
Die aktuelle Version gibt es hier:
http://www.wortkonstrukte.net/CloudDownloaderVersion1.4.zip

Wer erstmal nur schauen mag, kann auch hier gucken:
http://www.youtube.com/watch?v=CRuVeDG1CyY

Viele Grüße,
ein blutiger_anfänger

Thema: Download von Bilder über PHP-Script
Am im Forum: Web-Technologien

Hallo,

ich möchte eine Reihe an Bildern herunterladen. Bisher habe ich es über einen Webclient und die DownloadFile Methode probiert. Jedoch erhalte ich dort keine Bilder.
Die Bilderlinks liegen in folgendem Format vor.

http://www.net-blog.net/stalki/admin/ajax/content.php?get_action=open_file&file=%2FUploads%2F_009.jpg
Im Browser werden Sie korrekt angezeigt, der Webclient lädt aber nicht die Bilder. Sondern nur 1kb große Dateien.
Wie komme ich an die Bilder ran?

Viele Grüße

edit://
Der Inhalt der heruntergeladenen Dateien ist folgender:
<?xml version="1.0" encoding="UTF-8"?><tree ><message type="ERROR">filesize() [&lt;a href='function.filesize'&gt;function.filesize&lt;/a&gt;]: stat failed for ajxp.fs://0/Uploads/_009.jpg in /usr/www/users/netnbl/stalki/admin/ajax/plugins/hook.openfile/class.HookOpenFile.php (l.56)</message></tree>

Thema: Exception Handling bei Programmstart
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ok, habe das Problem gelöst. Es lag an der 32bit/64bit Migration.
Genaueres hier: Wow64DisableWow64FsRedirection Function
und hier: WOW64

viele Grüße und Danke für eure Hilfe,
ein blutiger Anfänger

Thema: Exception Handling bei Programmstart
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

@zero_x: Danke für den Tipp.

Jedoch liegt der Fehelr definitiv bei der "nicht einlesbaren" Datei. Hat da irgendjemand eine Idee? Über den Explorer ist sie erreichbar. Wenn ich unter "AnyCPU" kompiliere klappts auch, nur bei x86 wirft er die Exception, dass die Datei nicht gefunden werden konnte.

Offtopic: Sollte ich dafür einen eigenen Thread aufmachen?

Thema: Exception Handling bei Programmstart
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ok, bin näher dran.
Habe vorher auf AnyCPU debuggt nun auf x86, weil die Zielsysteme x86 sind.
Bei x86 wirft er mir auch auf meinem Entwicklungsrechner eine Exception.
Genauer gesagt beim Einlesen einer Datei mit dem Streamreader.
Er sagte, die Datei xxx konnte nicht gefunden werden.
Wenn ich den Dateipfad aus der Exception kopiere und bei Start>Ausführen einfüge, öffnet er die Datei aber Anstandslos.
Was könnte das sein? Die Datei existiert und der Pfad ist richtig, trotzdem sagt der Streamreader er könnte sie nicht finden.
Kann das daran liegen, dass die Dateiendung der Datei 4-stellig (.conf) ist? Haben x86 Systeme da ein Problem mit?

edit://
Die Datei liegt in sytem32 - kann es sein, dass bei x86 andere/zusätzliche Rechte als bei x64 vergeben werden müssen?

Thema: Exception Handling bei Programmstart
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

ich habe mal wieder ein kleines Problem. Ich habe eine Anwendung entwickelt, die auf meinem Entwicklungsrechner auch super läuft.
Auf sämtlichen anderen PC's bekomme ich Sie nicht gestartet.
Da auf den anderen PC's auch kein Visualstudio etc. ist, kann ich sie auch nicht vernünftig durchsteppen.
Also hab ich um alle Aktionen, von Form_Load an, try-catch Blöcke geschrieben und wollte die Exception mit Hilfe des Streamwriters in eine Datei schreiben lassen.
Dies funktioniert jedoch auch nicht.
Das Programm scheint vorher schon abzubrechen.
Eine Fehlermeldung zeigt es jedoch auch nicht an. Nur "Das Programm musste geschlossen werden. Es wird nach der Fehlerursache gesucht..."
Ich vermute, dass der Fehler dann in einer der using-Anweisungen liegen muss.
Ich verwende aber abgesehen von den Framework eigenen .dlls nur 2 externe. (AForge Lib) und gebe diese auch der .exe mit.
Denoch denke ich, dass dort irgendwo der Fehler liegt.
Meine Frage nun, wie kann ich Fehler beim starten/um die using-Anwendungen drum herum und auch vorher schon abfangen und visualisieren?

Viele Grüße,
Raffi

Thema: Process.StandardInput.Encoding setzen/ändern - Problem mit Umlauten
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Unglaublich. Etliche Stunden gesucht und probiert und die Lösung lag so nah.
Ein einfacher Zusatz von

sw.AutoFlush = p.StandardInput.AutoFlush;
            sw.NewLine = p.StandardInput.NewLine;
hat schon gereicht, um herbi's Code funktionabel zu machen.

Damit die nächsten verzweifelten auch was davon haben. Nochmal der ganze Absatz:


PSI = new ProcessStartInfo("cmd.exe");
            PSI.RedirectStandardInput = true;
            PSI.RedirectStandardOutput = true;
            PSI.RedirectStandardError = true;
            PSI.UseShellExecute = false;
            PSI.StandardOutputEncoding = System.Text.Encoding.GetEncoding(437);
            PSI.StandardErrorEncoding = System.Text.Encoding.GetEncoding(437);
            
            p = new Process();
            p.StartInfo = PSI;
            p.OutputDataReceived += new DataReceivedEventHandler(p_OutputDataReceived);
            p.ErrorDataReceived += new DataReceivedEventHandler(p_ErrorDataReceived);
            p.Start();
            p.BeginOutputReadLine();       

            sw = new StreamWriter(p.StandardInput.BaseStream, Encoding.GetEncoding(437));
            sw.AutoFlush = p.StandardInput.AutoFlush;
            sw.NewLine = p.StandardInput.NewLine;

Thema: Process.StandardInput.Encoding setzen/ändern - Problem mit Umlauten
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Guten Morgen,

Für ein aktuelles Projekt versuche ich gerade mit der cmd.exe zu interagieren.
Ich habe auf meiner Form zwei Textboxen (Ausgabe & Eingabe) und einen Button, über welche die cmd.exe gesteuert werden soll.

Mein Code sieht so aus:


            PSI = new ProcessStartInfo("cmd.exe");
            PSI.RedirectStandardInput = true;
            PSI.RedirectStandardOutput = true;
            PSI.RedirectStandardError = true;
            PSI.UseShellExecute = false;
            PSI.StandardOutputEncoding = System.Text.Encoding.GetEncoding(437);
            PSI.StandardErrorEncoding = System.Text.Encoding.GetEncoding(437);
            
            p = new Process();
            p.StartInfo = PSI;
            p.OutputDataReceived += new DataReceivedEventHandler(p_OutputDataReceived);
            p.ErrorDataReceived += new DataReceivedEventHandler(p_ErrorDataReceived);
            p.Start();
            p.BeginOutputReadLine();            
            sw = p.StandardInput;

Das klappt so auch alles ganz gut. Seit dem ich folgendes drin habe


 PSI.StandardOutputEncoding = System.Text.Encoding.GetEncoding(437);
            PSI.StandardErrorEncoding = System.Text.Encoding.GetEncoding(437);
werden mir auch wunderbar Sonderzeichen und Umlaute angegeben. Jedoch nur ausgegeben/angezeigt.
Einlesen klappt nicht. Es wird zwar korrekt eingelesen, aber Umlaute, die ich per "sw" in den StandardInput schreibe, werden nicht korrekt angezeigt.
Ich dachte mir, dass ich dort auch irgendwie das richtige Encoding (Codepage 437) angeben muss und habe auch schon extrem viel gesucht. Bei meienr Suche bin ich auf folgenden Post Console als Steuerelement einbinden. gestoßen. Die dort von herbivore angeregte Lösung lässt sich zwar fehlerfrei kompilieren, jedoch kommt nichts, was ich per sw.WriteLine schreibe, an der cmd.exe an.
Zitat
herbi's Lösungansatz

sw = new StreamWriter(p.StandardInput.BaseStream, System.Text.Encoding.GetEncoding(437));

Ich hoffe ihr könnt mir weiterhelfen.
Wie kann ich das Encoding für den StandardInput ändern?

Viele Grüße

Thema: Fehler bei Zugriff auf Homepagelemente über Webbrowsercontrol
Am im Forum: GUI: Windows-Forms

Ohne zu wissen, welche Seite das ist, die rummuckt - sprich ohne einen Blick in den Code - wird es schwer zu helfen.

Thema: Fehler bei Zugriff auf Homepagelemente über Webbrowsercontrol
Am im Forum: GUI: Windows-Forms

Auf diese Art und Weise, wird auch nur einmal der Quelltext geladen und angezeigt. Wenn du aktiv weitersurfen willst, dann rufe den Quelltext per webBrowser.Navigate Methode auf oder fange die Link-Klicks ab und laden den neuen Quelltext wieder über die GetHtml Methode.

Viele Grüße,
Raffi

Thema: C# Webseite auslesen und in Variablen speichern
Am im Forum: Web-Technologien

Zum Thema Regex findest du hier ein wunderschönes Tutorial... ;)

Thema: Suche kostenlos Web-Hosting ohne Werbung
Am im Forum: Smalltalk

Wenn ich mich recht erinnere ist http://www.bplaced.net/ werbefrei. Mehrere Subdomains, wirst du jedoch nur durch mehrfache Anmeldung erhalten.

Viele Grüße,
blutiger_anfänger

p.s.: Ansonsten gibt es auch viele Hoster, die Paypal als Zahlungsmittel akzeptieren. ;)

Thema: Rundenzähler über Webcam (Bilderkennung)
Am im Forum: Grafik und Sound

Zitat von sunshadow
Da ich noch nie ein USB-Gerät und Bilder programmiertechnisch angesprochen und verarbeitet habe, würde ich gerne wissen, welche Bereiche ich mir anschauen sollte.

Ist eigentlich gar nicht so schwer. ;)
http://www.net-blog.net/blog/index.php/2010/06/23/c-webcams-benutzen/

Thema: Click-Events anderer Anwendungen abfangen
Am im Forum: GUI: Windows-Forms

Schau dir mal folgenden Artikel an. KB318804: Festlegen einen Windows-Hook in Visual c# .NET
Du könntest die threadID deiner Anwendung abfragen. Und dann einen threadspezifischen Maushook setzen.

edit:// Da war herbi wohl schneller...

Thema: c# - WebBrowerControl - Auf Event warten
Am im Forum: Web-Technologien

Probier's mal wie folgt. ;)


public void machwas(){
  string currentName = names[0];
  if(names.Count != 0){
    b.navigate("http://www.info-seite.de/" +currentName + "_info.php"); 
   names.RemoveAt(0);
  }

Viele Grüße,
blutiger_anfänger

Thema: MessageBox im Facebook Design
Am im Forum: .NET-Komponenten und C#-Snippets

Und hier der Download...

Thema: MessageBox im Facebook Design
Am im Forum: .NET-Komponenten und C#-Snippets

Beschreibung:

Aus gegebenem Anlass habe ich eine MessageBox-Komponente entworfen, die vom Design her dem von Facebook angepasst ist und zugleich viele Eigenschaften der .Net-Framework MessageBox-Klasse enthält/nachempfindet.

So sind die Überladungen...


MessageBoxFB.ShowDialog(string text)

MessageBoxFB.ShowDialog(string text, string caption)

MessageBoxFB.ShowDialog(string text, string caption, MessageBoxButtons buttons)

MessageBoxFB.ShowDialog(string text, string caption, MessageBoxButtons buttons, MessageBoxIcon icon)

MessageBoxFB.ShowDialog(string text, string caption, MessageBoxButtons buttons, Image customicon)
...denen der "original" MessageBox nachempfunden. Der Entwickler hat lediglich, zusätzlich die Möglichkeit auf Wunsch ein beliebiges Image-Objekt im Dialog anzuzeigen.
Die standard DialogResults beherrscht die FB MessageBox ebenso.

Aufgerufen werden kann die Komponente zum Beispiel wie folgt.


//Beispiel 1
MessageBoxFB.ShowDialog("Testnachricht");

//Beispiel 2
if (MessageBoxFB.ShowDialog("Sind Sie sicher?", "Eine Frage", MessageBoxButtons.YesNo) == DialogResult.Yes)
{
         DateiLoeschen();
} 

Wie das ganze aussieht, könnt ihr dem angehängten Bild entnehmen.
Denn Download findet ihr im nachfolgenden Post.

Über Anregungen und konstruktive Kritik würde ich mich sehr freuen. (ggf. auch an dieser Stelle: C# – Facebook like MessageBox )

Viele Grüße,
der blutige Anfänger ;)

p.s.: Da wir hier ja nach fairen Regeln spielen, möchte ich noch anmerken, dass mir folgender Artikel bezüglich des Aplhablendigs (siehe transparenter Rahmen der MsgBox) sehr geholfen hat. Per Pixel Alpha Blend in C#

Schlagwörter: MessageBox, transparenter Rahmen, Facebook Dialog, DialogResult

Thema: webcam aufnahme in 5s videos splitten
Am im Forum: Grafik und Sound

Hast du es über deinen Ansatz hinbekommen? Wenn ja würde ich mich über deine Lösung freuen. (Und leser die über Google hier reinstolpern sicher auch... ;) )

Thema: webcam aufnahme in 5s videos splitten
Am im Forum: Grafik und Sound

Muss das Video denn unkomprimiert sein?
Sonst würde ich sagen könntest du deine Webcam auch mit dem AForge Framework ansteuern (siehe hier http://www.net-blog.net/blog/index.php/2010/06/23/c-webcams-benutzen/ ) und die erhaltenen Bitmap mit der AVI File Library (siehe hier http://www.codeproject.com/KB/audio-video/avifilewrapper.aspx ) zu einem komprimierten Video zusammen setzen.

Thema: Linie zeichnen, wenn Startpunkt, Länge und Winkel bekannt
Am im Forum: Grafik und Sound

Du kannst doch a und b als Vektoren betrachten. Als Fußpunkte (x) der beiden Vektoren nimmst du jeweils einen Eckpunkt von c. Als Richtung kannst du die Winkelmaße nehmen. Dann berechnest du den Schnittpunkt der beiden Vektoren. Dieser ist dann dein gesuchter Punkt y.
Somit hast du für a, wie b deine Werte für x und y.

viele Grüße!

p.s.: Korriegiert mich, wenn ich irre. ;)


edit://
Vielleicht hilft dir das auch weiter... http://www.arndt-bruenner.de/mathe/scripts/Dreiecksberechnung.htm

Thema: Bei Doppelklick auf Text in Textbox soll (trotzdem/nur) ein Event ausgelöst werden
Am im Forum: GUI: Windows-Forms

Hallo Gremgiz,

ich behaupte, dass das zu 100% klappt. ;) Wenn du uns den entsprechenden Quellcode mal zu kommen lassen würdest, dann könnten die anderen, sowie auch ich mal einen Blick drauf werfen und dir weiter helfen.

Thema: Bei Doppelklick auf Text in Textbox soll (trotzdem/nur) ein Event ausgelöst werden
Am im Forum: GUI: Windows-Forms

Idee! ;)

Statt Textbox folgende abgeleitete Version nehmen.

class NoSelectTextBox : TextBox
    {
     
        const int WM_LBUTTONDBLCLK = 0x203;
        protected override void WndProc(ref Message m)
        {
            bool fHandled = false;

            switch (m.Msg)
            {
                case WM_LBUTTONDBLCLK:
                   
                    fHandled = true;                   
                    break;  
            }

            if (!fHandled)
            {
                base.WndProc(ref m);
            }
        }
    }

und das "Doppelklick Event", wie folgt auslösen:


Timer ti = new Timer();
        bool doubleclk = false;
        private void textBox1_MouseClick(object sender, MouseEventArgs e)
        {
            ti.Interval = 250;
            ti.Tick += new EventHandler(ti_Tick);

            if (!doubleclk)
            {
                doubleclk = true;
                ti.Start();
            }
            else
            {
                MessageBox.Show("das war ein doppelklick!");
            }
        }

        void ti_Tick(object sender, EventArgs e)
        {
            ti.Stop();
            doubleclk = false;
        }

Ist zwar Quick'n'Dirty - aber funktioniert. (Sogar ohne flackern ;P )

Thema: Vorlage für eine Windows Vista/7 Tray Application
Am im Forum: .NET-Komponenten und C#-Snippets

Bitte, bitte - sicher ist es nicht super wichtig - aber irgendwie hat es mich vom Applicationflow her verwirrt... (Böses Denglisch - gibt es überhaupt ein Wort wie "Applicationflow"?) ;D

Thema: Akinator und Q20: Sie denken an etwas, und die KI wird versuchen, es zu erraten
Am im Forum: Smalltalk

Kenne den Akinator schon etwas länger. Viel spannender finde ich aber die Frsage, wie man so etwas selber umsetzen kann. Hat vielleicht irgendjemand ein paar Papers zu der Thematik zur Hand?

viele Grüße

Thema: Vorlage für eine Windows Vista/7 Tray Application
Am im Forum: .NET-Komponenten und C#-Snippets

Entweder mir hat sich die Logik noch nciht ganz erschlossen oder folgende Methode müsste so

private void ApplicationNotifyIconMouseClick(object sender, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Left)
                return;

            if (Visible)
            {
                Hide();
                SetLightBulbOffIcon();
                return;
            }

            SetLightBulbOnIcon();
            Show();
            Activate();
        }

anstatt so


private void ApplicationNotifyIconMouseClick(object sender, MouseEventArgs e)
        {
            if (e.Button != MouseButtons.Left)
                return;

            if (Visible)
            {
                Hide();
                return;
            }

            SetLightBulbOnIcon();
            Show();
            Activate();
        }

aussehen... ;)
( siehe: SetLightBulbOffIcon(); )

Thema: Windows Mobile -> Compact Framework - reagieren auf neue Email
Am im Forum: Rund um die Programmierung

Hab's nicht ausprobiert (mein HTC wandert gerade zur Reparatur).
Hatte das folgendem Fred entnommen. >> http://social.msdn.microsoft.com/forums/en-US/vssmartdevicesvbcs/thread/e0389a6c-d785-4714-b5af-1fa9351ad355/