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 thepaul
Thema: Probleme mit XmlDocument und SelectSigngleNode
Am im Forum: Datentechnologien

OK, habs jetzt zum laufen bekommen. Aber warum geht das nicht ohne dieses Namespace zeugs. XPath an sich ist doch eindeutig oder?

Thema: Probleme mit XmlDocument und SelectSigngleNode
Am im Forum: Datentechnologien

Hey,

ich habe grad ein ähnliches Problem. Allerdings weiß ich nicht was Namespace umschreiben bedeutet oder wie ich das lösen kann.

Kann mir jemand einen Hint geben?

Thema: Bitmap lässt sich nicht speichern
Am im Forum: Grafik und Sound

Ich hab das using jetzt weggemacht aber es geht immer noch nicht.

Ich habe das ganze nochmal vereinfacht, vlt sieht jemand jetzt den Fehler:


var prov = new ScreenshotImageProvider (handle);

            for (int i = 0; i < 100; i++)
            {
                var b = prov.NextImage ();
                var file = path + "image" + i + ".bmp";
                b.Save (file);

                Thread.Sleep (300);
            }

gibt:
Allgemeiner fehler in GDI+.

Der Screenshot wird über

Graphics.CopyFromScreen (left, top, 0, 0, new Size (width, height));
erzeugt.

Thema: Bitmap lässt sich nicht speichern
Am im Forum: Grafik und Sound

Das Bild ist eigentlich ein Screenshot, zu Testzwecken wird es aber aus einer png-Datei geladen. Daran liegt also cicht.


Was mir gerade auffällt.

Ich benutze das Bitmap vorher in einem using-Block. Der gibt ja normalerweise hinterher die Resourcen frei. Könnte das das Problem sein?

Thema: Bitmap lässt sich nicht speichern
Am im Forum: Grafik und Sound

Hey,
ich habe nen ganz einfachen Code:

 string filename = string.Format ("image{0}.png", i);
                    Log.Debug (filename);
                    tmp.Save (filename, System.Drawing.Imaging.ImageFormat.Png);

Dabei bekomme ich allerdings ne Exception:
Zitat
ArgumentException wurde nicht behandelt: ungültiger Parameter.

Mehr infos gibts nciht und ich hab jetzt schon ewig rumprobiert und im Netz gesucht.

Habt ihr vlt ne Idee woran das liegen könnte?

Thema: Klassenaufbau für Daten-Export
Am im Forum: Rund um die Programmierung

Ich versuche das nochmla genauer zu beschreiben:

Die eigentliche Funktionalität des Export soll in eigenen Klassen liegen, die z.B. von IExporter ABgeleitet werden.

IExporter
{
  void Export (IList<string> items);
}

Weiterhin soll es Presets geben, die bestimmte Eigenschaften des Export speichern. Z.B. für einen Export auf die Festplatte das Zielverzeichnis, bei einem Export zu Flickr den Anmeldename, das Zielalbum usw.

Jetzt is meine Frage, wie ich die Informationen, die ja auch an die Exportklasse übergeben werden müssen, dort hinaein bekomme, weil ja IExporter in der Export-Methode nur einen parameter hat. Ein Paramater-Array würde schon gehn, aber gutes Design sieht anders aus.

Ist das Problem jetzt klar?

Thema: Klassenaufbau für Daten-Export
Am im Forum: Rund um die Programmierung

Hey,

aus einem Programm möchte ich Fotos exportieren. Da soll an verschiedene Services möglich sein, z.B. Flickr, die Festplatte, Webgallery...
Die einzelnen Services sollen als Erweiterungen modular aufgebaut sein.

Weiterhin möchte ich, dass es möglich ist für jeden Service mehrere Presets zu erstellen, z.B. Speicherort, Albenverknüpfungen usw.


Ich habe schon ein bisschen rumprobiert, habe aber Probleme, die Funktionalität des Export zu den einzelnen Services von dem der Presets zu trennen.
Habt ihr Vorschläge nach welchen Entwurfsmustern ich das beschriebene Problem lösen könnte?

Vielen Dank!

Thema: Entscheidungen mit enums verkürzen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

das gibt ergibt noch andere Möglichkeiten


TestEnum a = TestEnum.ABC;
TestEnum b = TestEnum.ABC | TestEnum.DEF | TestEnum.GHI;
				
bool c = (a & b) > 0;

In b sind alle aktzeptierten Werte gespeichert. Ob a einen Wert aus b enthält lässt sich einfach prüfen.

Thema: Entscheidungen mit enums verkürzen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Danke euch allen.

Flags waren das was ich gesucht habe

Thema: Entscheidungen mit enums verkürzen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hi,

warscheinlch ist das ganze einfach, habe aber trotzSuche nichts zum Thema gefunden.

Angenommen ich habe eine Variable einer Enumeration (TestEnum a = TestEnum.ABC).
Jetzte möchte ich mit die Entscheidung treffen, ob a zu einer bestimmten Gruppe von Enumerationswerten dazugehört. Z.B.:


//b = true;
bool b =  (a == TestEnum.ABC || a == TestEnum.DEF || a == TestEnum.GHI);

//b = false;
bool b =  (a == TestEnum.DEF || a == TestEnum.GHI || a == TestEnum.JKL);

Gibt es eine Möglichkeit die Abfrage zu verkürzen (logische Operatoren?!) oder eine einfachere Möglichkeit zur Prüfung ob eine Variable zu einer Menge von Enumerationswerten dazugehört?

Vielen Dank.

Thema: CodeEditor Komponente
Am im Forum: Rund um die Programmierung

Zitat
Original von herbivore
hast du schon auf www.codeproject.com geguckt?
Ja, hab ich. Allerdings auch nur die beiden gefunden.

Thema: CodeEditor Komponente
Am im Forum: Rund um die Programmierung

Hallo,

ich brauche für ein Projekt ein Control, mit dem ich leicht Quellcode highlighten und darstellen kann. Das ganze sollte weiterhin kostenlos sein.

Auf meiner Suche bin ich auf zwei Komponenten gestoßen. Zum einen den Code-Editor von SharpDevelop und zum anderen den aus der Fireball-Libary.

Allerdings gibt es zu keiner Komponente eine ausreichende Dokumentation.

Kennt jemand eine weiter Komponente oder Beispielanwendung, mit der man sich die Benutzung anschauen könnte.

Vielen Dank schonmal.

Thema: Bildübersicht
Am im Forum: GUI: Windows-Forms

Hallo,

ich möchte in einem Programm eine Übersicht von Bildern aus einem Ordner anzeigen lassen. (So wie hier im rechten Teil der Oberfläche: http://f-spot.org/Image:Main-window.png)

Ich möchte also ein Control das eine Liste von Bilder anzeigt. Dazu habe ich jetzt ein paar Fragen bezüglich des Aufbaus.

Da ich zu jedem Bild mehr Informationen anzeigen will will ich für jedes Bild ein einzelnen Control verwenden. Diese Controls sollen dann von dem Übergeordneten angeordnet werden.

Haltet ihr das für sinnvoll oder sollte ich alles von dem großen Teil zeichnen lassen?

Wenn ich jedes Bild in einem extra Control anzeige: Ist es sinnvoller für die Anzeige eine PictureBox nehme oder das Bild per Hand zeichne? Was ist aus Speicher- bzw. Rechenzeitlicher Sicht zu empfehlen?

Danke schonmal.

Thema: XmlElement in Ableitung casten
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

ich habe eine Klasse, die von XmlElement abgeleitet ist. Sie fügt nur einige Properties ein, die auf Attribute des Knotens zugreifen.
Jetzt habe ich einen string, der XML enthält. Mit diesem möchte ich eine Instanz meine Klasse erzeugen.
Gibt es dafür eine andere Möglichkeit als einen eigenen Cast-Operator zu schreiben?

MfG ThePaul

Thema: Library für Menüs im Office 2007 Style
Am im Forum: GUI: Windows-Forms

Unter http://www.componentfactory.com/blog.php?subaction=showfull&id=1172933114&archive=&start_from=&ucat=5& gibt es ne kostenlose Beta von einem solchen Control.
Nach dem öffentlichen Test wird das aber bestimmt auch kommerziell.

Thema: empfangene Socket-Daten anzeigen
Am im Forum: Netzwerktechnologien

keine Ideen?

*push*

Thema: Negativbild erstellen
Am im Forum: Grafik und Sound

der schlüssel dürft die Benutzung von unsafe-Code sein:

Hier mal 2 Links die ich auf die schnelle gefunden habe:

Thema: empfangene Socket-Daten anzeigen
Am im Forum: Netzwerktechnologien

Hallo,

ich versuche gerade einen einfachen Client zu schreiben, der mit einem von mir geschriebenen Server kommuniziert.

Grundlegend dafür ist eine Klasse, die auf einem Socket aufbaut und Daten versenden und empfangen kann. Wenn Daten empfangen werden wird ein Event gefeuert.

Dieses wollte ich in einer WinForms-Anwendung abfangen. Allerdings wird die erhaltene Nachricht nicht angezeigt, sie wird aber vom Socket empfangen und das Event wird ebenfalls gefeuert.

Die AsyncSocket-Klasse


/// <remarks>
    /// AsyncSocket is the class that communicates with the server.
    /// </remarks>
    public class AsyncSocket 
    {
        private Socket _socket;
        private Decoder _decoder = Encoding.UTF8.GetDecoder();
        private UTF8Encoding _utf = new UTF8Encoding();
        private byte[] _buff = new byte[4096];
        private Stream _stream;


        /// <summary>
        /// Occurs when a connection is established with a server.
        /// </summary>
        public event EventHandler Connection;

        /// <summary>
        /// Occurs when a message has been received from the server.
        /// </summary>
        public event EventHandler<MessageEventArgs> Message;

        /// <summary>
        /// Initializes a new instance of the <see cref="AsyncSocket"/> class.
        /// </summary>
        public AsyncSocket ()
        {
            _socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
        }

        /// <summary>
        /// Establishes a connection to the specified remote host.
        /// </summary>
        /// <param name="hostname">Hostname to connect to</param>
        /// <param name="ssl">Is this connection to be encrypted?</param>
        public void Connect(string hostname)
        {
            IPHostEntry ip = Dns.GetHostEntry(hostname);

             IPEndPoint ep = new IPEndPoint(ip.AddressList[0],5222);
            _socket.Connect(ep);
            if (_socket.Connected)
            {
                _stream = new NetworkStream(_socket);
            }
            _stream.BeginRead(_buff, 0, _buff.Length, new AsyncCallback(Receive), null);
            OnConnect();
        }

        /// <summary>
        /// Closes the current socket.
        /// </summary>
        public void Close()
        {
            _socket.Close();
        }

        /// <summary>
        /// Writes data to the current connection.
        /// </summary>
        /// <param name="msg">Message to send</param>
        public void Write(string msg)
        {
            byte[] mesg = _utf.GetBytes(msg);
            _stream.Write(mesg, 0, mesg.Length);
        }

        private void OnConnect()
        {
            if (Connection != null)
            {
                Connection(this, EventArgs.Empty);
            }
        }

        private void OnMessage(String message)
        {
            if (Message != null)
            {
                Message(this, new MessageEventArgs(message));
            }
        }

        private void Receive(IAsyncResult ar)
        {
            try
            {
                int rx = _stream.EndRead(ar);
                char[] chars = new char[rx];
                _decoder.GetChars(_buff, 0, rx, chars, 0);
                string msg = new string(chars);
                _stream.BeginRead(_buff, 0, _buff.Length, new AsyncCallback(Receive), null);
                OnMessage(msg);
            }
            catch (SocketException e)
            {
            }
            catch (InvalidOperationException e)
            {
            }
        }

        /// <summary>
        /// Gets the current status of the socket.
        /// </summary>
        public bool Connected
        {
            get { return _socket.Connected; }
        }
    }

Und das Formular:


public partial class TestForm : Form
    {
        AsyncSocket stream;

        public TestForm()
        {
            InitializeComponent();
            stream = new AsyncSocket();

            stream.Connection += new EventHandler(stream_Connection);
            stream.Message += new EventHandler<MessageEventArgs>(stream_Message);

            try
            {
                stream.Connect("127.0.0.1");
            }
            catch (Exception ex)
            {
                richTextBox1.AppendText(ex.Message+"\n");
                throw;
            }
        }

        void stream_Connection(object sender, EventArgs e)
        {
            button1.Enabled = true;
        }

        void stream_Message(object sender, MessageEventArgs e)
        {
            richTextBox1.AppendText(e.Message + "\n");
        }

        private void button1_Click(object sender, EventArgs e)
        {
            stream.Write(textBox1.Text);
        }
    }

Thema: Interface implementiert?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Danke,
funktioniert jetzt wunderbar. Ich habe wohl die Hilfe in Sachen is-Operator falsch verstanden.

Danke nochmal.

MfG ThePaul

Thema: Interface implementiert?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

ich habedas ganze nochmal ganz grob implementiert. Code ist im Anhang. Allerdings funktioniert es immer noch nicht.

Thema: Interface implementiert?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat
Original von svenson
Das Interfacé, welches vom Hauptprogramm genutzt und vom Plugin implementiert wird, muss als eigenständiges Assembly (Dll) vorliegen (nix drin außer Interface).
Ist so. sollte auch nicht das Problem sein.

Thema: Interface implementiert?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ich hbae jetzt sichergestellt, dass die gleicher Version der Assambly verwendet wird. Die Namespaces sind auch gleich und es gibt nur ein Interface IRenderer.

Habt ihr noch irgendwelche Ideen, woran das scheitert?

Thema: Interface implementiert?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

also isValidPlugin() gibt auf jeden Fall true zurück.

Das Problem ist wahrscheinlich die Version der Bibliothek, in der IRenderer liegt. Das Projekt liegt zusammen dem der Oberfläche und der PLugins in einem VS-Projekt.


- Projekt (VS-Projektmappe)
  - Bibliothek A (u.a. IRenderer)
  - verschiedene Pluginbibliotheken B (Abhängigkeit auf A gesetzt)
  - UI (Abhängigkeit auf A und B gesetzt)
Deshalb gehe ich eigentlich davon aus, das immer die aktuellste version beim kompilieren genutzt werden sollte.

MfG ThePaul

Thema: Interface implementiert?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo,

ich möchte in einem Programm prüfen, ob eine Klasse ein bestimmtes Interface implementiert.
Dafür benutze ich, wie hier beschrieben, das is-Schlüsselwort. Allerdings wird nie in die Abfrage gesprungen.

ein Codeausschnitt:

if (isValidPlugin(plugin))
                        {
                                if (plugin is IRenderer)//Bedingung wird nie erfüllt
                                    registerPlugin(plugin);
                        }
MfG ThePaul

Thema: Plugins und allgemeine dlls
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo,
ich habe ein Programm, dass durch Plugins erweiterbar ist. Jedes Plugin soll in einen seperaten Unterordner des Anwendungsordners liegen.
Allerdings benötigt jedes Plugin bestimmte Dateien (Bibliotheken, die von Host und Plugin gebraucht werden) die schon im Anwendungsverzeichnis liegen.
Muss ich diese auch in jedes Pluginverzeichnis kopieren oder reichtb es wenn sie vom Host-programm geladen werden?

Ich danke schonmal für alle Antworten. Da ich jedoch zur Zeit keinen privaten Internetanschluss besitze kann ich nicht zeitnah antworten. (Frühestens Montag)

MfG ThePaul

Thema: p2p tv -> Streams senden
Am im Forum: Rund um die Programmierung

soweit ich weiß sind im Windows COmmunication Framework Funktionen zum AUfbau von P2P-Netzen vorhanden.

hier ein Link: http://www.microsoft.com/germany/msdn/library/windows/windowsvista/MachenSiesichdieLeistungsfaehigkeitderP2PKommunikationinWindowsVistaundWCFzunutze.mspx?mfr=true

Hoffe das hilft dir weiter!

ThePaul

Thema: Panel-Autoscroll ohne Controls [==> korrekt in das gescrollte Panel zeichnen]
Am im Forum: Grafik und Sound

nach langer zeit nochmal ich!

ich habe nochmal ausführlich probiert, bei mir geht es aber immer noch nicht.

Mein Code (einfach ein neues Formular erstellen, ein Button und ein Panel drauf und bei dem Panel Autosize auf true):



for (int i = 0; i < 10; i++)
            {
                Graphics g = panel1.CreateGraphics();
                
                //Mit Zeichnen Gehts nicht :(
                //g.FillRectangle(new SolidBrush(Color.DarkCyan), 10, i * 100 + 10, 100, 90);
                //Mit Button gehts
                Button b = new Button();
                b.Text = i.ToString();
                b.Location = new Point(10, i * 100 + 10);
                b.Size = new Size(100, 90);

                panel1.Controls.Add(b);
            }

Thema: Panel-Autoscroll ohne Controls [==> korrekt in das gescrollte Panel zeichnen]
Am im Forum: Grafik und Sound

danke für die super schnelle antwort.

zu 1.: die Eigenschaft hilft mir nicht. Hat noch jemand ne Idee welche Eigenschaft das sein könnte

zu 2.: Was für einen Punkt muss da übergeben?

Thema: Panel-Autoscroll ohne Controls [==> korrekt in das gescrollte Panel zeichnen]
Am im Forum: Grafik und Sound

Hi,

ich habe ein Panel, in das ich je nach Benutzereingabe mal mehr oder weniger zeichnen. deshalb wollte ich mittels Autoscroll(falls nötig) einen Scrollbar anzeigen lassen.
Allerdings habe ich festgestellt, dass der nur angezeigt wird, wenn ich Controls in das Panel schiebe. Zeichnen reicht nicht!

Wie kann ich das umgehen?

2. Frage: Wie kann ich außerdem einstellen, dass der Scrollbar unten ist nach dem Zeichnen?

MfG ThePaul

Thema: Controls für .net 3 entwickeln
Am im Forum: GUI: WPF und XAML

danke dir.

ich gucks mir an!