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 bonzy
Thema: (Junior) Softwareentwickler Kundenprojekte (m/w/d) (Aachen/Home Office)
Am im Forum: Jobbörse

Bewerbungen bitte an careers@moduleworks.com.

Thema: (Junior) Softwareentwickler Kundenprojekte (m/w/d) (Aachen/Home Office)
Am im Forum: Jobbörse

Mein Name ist Marcel Bonzelet und ich leite eine Entwicklungsabteilung bei der ModuleWorks GmbH. Wir sind ein stark wachsendes Unternehmen im Bereich der automatisierten Fertigung und Weltmarktführer auf unserem Gebiet der Bahnplanungs- und Simulationstechnik. Wir als Firma und ich im Speziellen suchen aktuell verstärkt nach Entwickern und freuen uns über gute Bewerbungen. Diese sollten einen Lebenslauf, ein Anschreiben und eventuelle Arbeitszeugnisse enthalten.

Für Rückfragen stehe ich sehr gerne per Kommentar oder privater Nachricht zur Verfügung!

Dein Profil

  • Du hast einen Abschluss in Informatik oder einem vergleichbaren Studiengang
  • Du hast Programmiererfahrung in C# und/oder C++
  • Du besitzt gute Englischkenntnisse
  • Du bist motiviert, arbeitest gerne eigenverantwortlich und im Team
  • Wünschenswert wären Vorerfahrungen in Themen wie: WPF, Softwarearchitektur

Die Position
  • Direkter Ansprechpartner für internationale Kunden
  • Betreuung von Softwareintegrationen in bestehende Kundensysteme
  • Planung und Durchführung von Kundenschulungen in Aachen oder weltweit
  • Mitarbeit an mittel- bis langfristigen Softwareprojekten mit Fokus auf Anwendung unserer eigenen Komponenten
  • Zusammenarbeit im Team und Verbesserung der teaminternen Abläufe
  • Aufbereitung von Schulungsmaterial

Hier noch die Ausschreibung auf unserer Homepage: https://www.moduleworks.com/de/careers/juniorsoftwareentw/

Thema: SOAP Complex Type Probleme
Am im Forum: Netzwerktechnologien

Hey gfoidl,

das Einhaken bei der Serialisierung klingt recht vielversprechend. Hast du da eventuell noch eine Quelle zu parat?

Gruß

Thema: SOAP Complex Type Probleme
Am im Forum: Netzwerktechnologien

Zitat von witte
Hast Du mal geschaut ob es mit den alten Serviceproxies besser läuft?

Add Service Reference => Advanced => Add Web Reference

Da ich in VS8 arbeite, habe ich die alte natürlich probiert. Das neue wurde Testweise auch ausprobiert, aber ohne Besserung.

Thema: SOAP Complex Type Probleme
Am im Forum: Netzwerktechnologien

Hallo gfoidl,

danke für die Antwort. Ich habe mir das Tool angeschaut und verschiedene Parameter ausprobiert. Die generierten Dateien brachten allerdings keine Lösung. Weitere Suchen nach dem Problem sagten mir ebenfalls nur, dass es "schwierig" ist. Gibt es eventuell eine andere, meinetwegen manuellere Methode? Im dümmsten Fall muss ich wohl hingehen und die XML-Responses direkt abfangen und selber parsen.

Gruß
bonzy

Thema: SOAP Complex Type Probleme
Am im Forum: Netzwerktechnologien

Hallo zusammen,

ich hänge jetzt seit ein paar Tagen an diesem Problem und komme nicht mehr wirklich weiter. Ich habe bereits viele Kombinationen an Stichwörtern durch Google gejagt, aber sobald es in die Nähe meines Problems kam, gab es keine Antworten mehr.

Ich möchte anhand eines SOAP-Service Daten einer Website abfragen. Dazu habe ich eine Web Reference meinem Projekt hinzugefügt und greife darüber auf die Methoden zu. Dies funktioniert für simple Types wunderbar, sobald ein Complex Type ins Spiel kommt, fange ich mir alle möglichen Exceptions.

Beispielsweise liefert eine Methode getuserids(int) einen Typ ArrayOfUserid zurück. Dieser beinhaltet wiederum ein int[]. Beim Ausführen fange ich mir jedoch eine InvalidCastException

Fehler
Ein Objekt des Typ System.Int32[] kann nicht einem Objekt des Typs ArrayOfUserid zugewiesen werden.
. Wenn ich die generierte Reference.cs entsprechend verändere, dass die Methode direkt ein int[] zurückliefert, funktioniert es. Das gilt für jeden Array-Typ.

Sobald eine Methode mit einem "einfachen" sprich nicht-Array-Typ aufgerufen wird (z.B. getplayerbyid(int)), gibt es Exceptions wie
Fehler
Ein Objekt des Typ System.Xml.XmlNode[] kann nicht einem Objekt des Typs Player zugewiesen werden.
oder
Fehler
Der angegebene Typ wurde nicht erkannt: Name='Map', Namespace='http://xml.apache.org/xml-soap', bei <return xmlns=''>.

Ich verwende diese WSDL: http://www.comunio.de/soapservice.php?wsdl

Da sich die Reference.cs leicht generieren lässt, kopiere ich den Code jetzt nicht nochmal hierhin. Ich verwende dazu VS8. Ich habe es wie oben angesprochen über Visual Studio generieren lassen, da sind soweit ich das überschaut habe keine Parameter anzugeben.

Unter Java ließ sich das Problem für die Array-Typen laut einem Kollegen lösen, indem über eine Option beim Generieren durch AXIS1 das Unwrapping aktiviert wurde.

Hier noch der Code zum Ausführen:


            soapservicewsdl soap = new soapservicewsdl();

            object o = soap.getuserids(1458132);

Ich bin recht unerfahren was das Thema anbelangt, daher für jede Hilfe offen. :) Für mehr Informationen einfach anfragen.

Schönen Gruß

Edit: Mit dem Tool soapUI konnte ich mir verschiedene Response-XMLs anschauen und bin zumindest mal auf den Typ "Map" gestoßen, der aus dem namespace http://xml.apache.org/xml-soap entstammt. Gibt es eventuell damit bekannte Probleme?
<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="urn:soapservicewsdl" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns2="http://xml.apache.org/xml-soap" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
   <SOAP-ENV:Body>
      <ns1:getplayerbyidResponse>
         <return xsi:type="ns2:Map">
            <item>
               <key xsi:type="xsd:string">id</key>
               <value xsi:type="xsd:int">31080</value>
            </item>
            <item>
               <key xsi:type="xsd:string">name</key>
               <value xsi:type="xsd:string">Blaszczykowski</value>
            </item>
            <item>
               <key xsi:type="xsd:string">points</key>
               <value xsi:type="xsd:int">159</value>
            </item>
            <item>
               <key xsi:type="xsd:string">clubid</key>
               <value xsi:type="xsd:int">5</value>
            </item>
            <item>
               <key xsi:type="xsd:string">quote</key>
               <value xsi:type="xsd:int">9060000</value>
            </item>
            <item>
               <key xsi:type="xsd:string">status</key>
               <value xsi:type="xsd:string">ACTIVE</value>
            </item>
            <item>
               <key xsi:type="xsd:string">position</key>
               <value xsi:type="xsd:string">midfielder</value>
            </item>
         </return>
      </ns1:getplayerbyidResponse>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

Thema: DataBinding benutzt öffentliche Properties?
Am im Forum: GUI: WPF und XAML

Wieso genau? Letztlich liegen die Bindung und die Property in ein und derselben Klasse und wenn die Verwendung nur intern geschieht, sehe ich den Nutzen nicht, dass es öffentlich für alle ist. Es wird ja so quasi garantiert, dass man immer auf gebundene Properties zugreifen kann und will man das?

Thema: DataBinding benutzt öffentliche Properties?
Am im Forum: GUI: WPF und XAML

Hallo zusammen,

ich habe nur eine kurze Nachfrage: Muss ein Property wirklich public sein, damit sie für DataBinding herhalten kann? In meinen Tests mit einer ImageSource kam es zumindest zu diesem Ergebnis. Kein anderer Zugriffsmodifizierer hat funktioniert.

Gruß

Thema: [erledigt] ListBox Margin zwischen Elementen
Am im Forum: GUI: WPF und XAML

Ich entschuldige mich für die Störung. Ich habe gestern mit WPF angefangen und die Reihenfolge der Margin-Werte hat mich wohl beim Testen verwirrt. Ich hatte diesen Weg ausprobiert, aber links/rechts mit oben/unten vertauscht. Danke für den Anstoß, ich musste es im Prinzip nur nochmal ausprobieren. :)

Thema: [erledigt] ListBox Margin zwischen Elementen
Am im Forum: GUI: WPF und XAML

Hallo zusammen,

eine wahrscheinlich einfache Frage und Lösung, aber ich komme gerade nicht drauf und habe weder im Netz noch in "WPF 4" (Nathan) was gefunden. Und zwar möchte ich für eine ListBox ein ItemsPanelTemplate anlegen, dass den Abstand zwischen den Elementen regelt. Ein einfaches Stackpanel bewirkt leider nur den Abstand aller Elemente zur ListBox und für jedes Element möchte ich die Margin nicht setzen müssen. Gibt es da einen eleganteren Weg?

Gruß

Thema: ParamExecuter
Am im Forum: Projekte

Hallo Michael,

letztlich läuft es darauf hinaus, dass ich die Funktionalität einer .bat Datei imitiere. Ich nehme dabei sowohl die Arbeit der Erstellung dieser Datei ab als auch mögliche Probleme damit. Wenn ich über eine .bat Datei versuche, firefox mit Parametern zu starten, lande ich in einer Art Schleife. Über die Command Line komme ich anscheinend nicht an die "App Paths" heran. Eine Internetverknüpfung hat eine begrenzte Anzahl an Zeichen, um Parameter zu übergeben.

Das sind nur ein paar Probleme, die ich jetzt schon kenne und mit meinem Programm umgehen kann. Dazu ist es nunmal flexibler und einfacher zu bedienen, als sich für alles eine Datei zu erstellen.

Ich benutze es beispielsweise, um Spiele im Window Mode auszuführen oder um Solutions in Visual Studio zu laden. Die Desktop-Verknüpfungen zu Teamspeak und Filezilla habe ich soeben auch gelöscht und einen Server wähl ich da nicht mehr aus. Der praktische Nutzen wird mit der Zeit eher größer als kleiner, deshalb halte ich es trotz der Alternativen für brauchbar.

Gruß

Thema: ParamExecuter
Am im Forum: Projekte

Version: v1.2

"Create sets of programs which can be executed with as many parameters as you want!"

Ich stelle ein kleines Projekt vor, auf das ich von einem Kollegen angestoßen wurde. Er wollte mehrere Tabs/Seiten in Firefox mit einem Klick öffnen, aber hat es nicht geschafft.
Darauf kam mein Einwand, ich könnte ihm schnell ein Tool schreiben, um sein Problem zu lösen. Das erste Ergebnis war innerhalb von 20 Minuten fertig und lauffähig, aber natürlich unsauber.

Deshalb habe ich noch ein wenig mehr Arbeit reingesteckt und dies ist das Ergebnis.

Produktfunktionalität:
- Einfache Erstellung/Verwaltung eines "ProgramSets".
- Über ein ProgramSet kann eine Anwendung oder eine Verknüfung zu einer Anwendung mit Parametern versehen werden.
- Das ProgramSet ist über das Setup sowie über ein TrayIcon bei Minimierung des Setups ausführbar.
- Über einen "/minimized" Parameter kann das Programm direkt als TrayIcon gestartet werden.
- Wird der Name eines oder mehrerer ProgramSets als Parameter übergeben, werden diese ausgeführt und ParamExecuter beendet.
- Unter "Configuration" kann ein Windows Startup eingeschalt werden.
- Bei Eingabe eines Programms wird auf dessen Gültigkeit geprüft. Hierbei sind die Einträge unter "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths" in der Registry zu beachten.

In Planung:
- IntelliSense zur Auflistung gefundener Programme während der Eingabe
- Verknüpfungserstellung für eine "Parameter Execution" (Start der ParamExecuter.exe mit Parameter)
- Automatische Anordnung der Programme nach einer Benutzungsstatistik
- Für oft verwendete Programme verfügbare Parameter anzeigen?
- ...

Ich hoffe, dass das Programm in unterschiedlichen Fällen Gebrauch findet und würde mich freuen, wenn spezielle Einzelfälle gepostet würden, in denen das Programm besonders viel Sinn macht.

Ein paar Beispiele meinerseits findet man am Ende dieses Beitrags.

Gruß

Thema: Coding Styles Horror
Am im Forum: Smalltalk

Gerade bin ich wieder auf ein kleines Schmankerl gestoßen:


            if (this.cbxSuggestionList.SelectedIndex != -1)
            {
                this.cbxSuggestionList.SelectedIndex = -1;
            }

            if (this.cbxSuggestionList.SelectedIndex == -1 || this.cbxSuggestionList.DroppedDown)
            ...

Thema: [Gelöst] Form2 wird vor Form1 angezeigt / Form verliert Fokus nach OpenFileDialog
Am im Forum: GUI: Windows-Forms

(1) Du rufst die zweite Form wohl mit ShowDialog() auf, wodurch du keinen neuen Thread startest. Das macht es den zwei Formen natürlich unmöglich, parallel zu funktionieren. Stattdessen benutzt du hier Show().

(2) Wenn du sie mit ShowDialog() aufrufst, muss sie eigentlich den Fokus haben.

Thema: Live-Such-Thread abbrechen, wenn sich vor Ende der Suche, die Suchanfrage geändert hat
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ich verstehe das Problem noch nicht so ganz. Du lässt über mehrere Threads die gleiche Aktion mit verschiedenen Suchwerten laufen und synchronisierst alle fertigen Threads, damit die Ausgabe im ListView nicht durcheinander läuft. Und jetzt möchtest du eine gewisse Anzahl an Threads laufen lassen und nur neue aufmachen, wenn alte fertig sind, damit eben dieser Effekt nicht auftritt?

Bei mir kommt das Konzept nicht an, mehrere Suchen gleichzeitig zu starten. Vor allem würdest du mit dem Beenden eines Threads doch diese Suche zerschießen.

Ich hätts gern noch was genauer. :)

Thema: Der Aufruf einer Methode loest eine andere Methode aus (Verknuepfung)
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Also wie ich das verstehe ist das Problem, dass "Katze fuettern" statisch ist und "Katze schnurrt" nicht.

public class Cat
{
   void static feed()
   {
     Console.WriteLine("Feeding the cat - yum yum yum");
     purr(); // Geht natürlich nicht, weil purr nicht statisch ist und eine Instanz benötigt
   }

   void purr()
   {
     Console.WriteLine("prrrr prrr prrr");
   }

   public static void Main(String[] args)
   {
      Cat.feed();
   }
}

Allerdings verstehe ich nicht, wofür genau man das brauchen sollte. Wenn ichs denn getroffen habe, könntest du den speziellen Fall nennen?

Thema: DIA SDK Performance von IDiaSymbol
Am im Forum: Rund um die Programmierung

Guten Tag zusammen,

aktuell arbeite ich an einem kleinen Tool (WinForms GUI), dass C++ Source Code anhand von Visual Studio PDB-Dateien analysiert und grob gesehen alle für mich nützlichen Methoden und Funktionen ausliest. Dazu benutze ich das DIA SDK und arbeite somit mit COM-Objekten.

Das Problem an der Geschichte ist eindeutig die Performance: Ich laufe über ca. 200 PDB-Dateien und finde darin um die 1 Mio. Methoden. Der komplette Prozess dauert jetzt allerdings zwischen 5 und 10 Minuten und das liegt hauptsächlich (basierend auf Tests von mir) an der Arbeit mit dem Interface IDiaSymbol. Methoden wie "findChildren" oder "findLinesByAddr", an denen ich nicht vorbeikomme, ziehen auf diese Anzahl an Dateien einfach sehr viel Zeit.

Als Information hier noch ein Link zu MSDN: Debug Interface Access SDK.

Mir fallen ehrlich gesagt keine guten Ansätze ein, wie ich die Performance steigern könnte, da es nunmal stark an Code liegt, der nicht von mir geschrieben ist bzw. optimierbar wäre. Multithreading fällt so gesehen auch flach, weil es ein COM SDK ist. Zumindest ist mir keine Methode bekannt, wie ich damit arbeite, ohne den RCW abzuschneiden.

Ich bin über jede Hilfe und Ansätze dankbar. Wenn es nicht ohne Code geht, liefer ich diesen nach, auch wenn ich wie gesagt der Meinung bin, dass es daran nicht liegt.

Gruß

Edith: Bin durch Zufall darauf gestoßen, dass der RCW nicht aufgrund des Multithreadings, sondern durch einen zu frühen Release des COM-Objekts zustande kommt. Ich hatte diese Threading Geschichte in dem Zusammenhang noch im Hinterkopf und bin direkt von dieser Ursache ausgegangen, aber zumindest das scheint jetzt zu funktionieren. Wenn noch andere Vorschläge reinkommen, nehme ich diese natürlich auch gerne. :)

Bedankt fürs Verschieben.

Thema: Coding Styles Horror
Am im Forum: Smalltalk

Ich bin schon länger mit C# vertraut, aber das mir das nochmal passiert. :)

        public override int GetHashCode()
        {
            return 0;
        }

Das Hinzufügen mit Abfrage auf ContainsKey für über 30k Dictionary-Elemente hat mich Minuten gekostet. :D

Thema: von klasse auf form1 zugreifen
Am im Forum: GUI: Windows-Forms

Wie michlG schon sagte, ist es nicht gut, die Controls in der Spielerklasse zu halten. Wie genau ist denn deine Form aufgebaut? Gibt es für jeden Spieler einen eigenen Button oder einen einzelnen, der nach Kriterien auf verschiedene Spieler zugreift? Die einfachste Lösung wäre wohl, LabelAktualisieren den Text zurückgeben zu lassen, den du dem Label zuweisen willst.


public string LabelAktualisieren()
{
    return this.Name + this.Geld;
}

private void OnClick(..)
{
    this.label = spieler[0].LabelAktualisieren();
}

Grundsätzlich ist es schlechter Stil, wenn man Daten (Spieler) und Darstellung (Form) zusammenschmeißt.

Thema: Opensource Fussballmanager
Am im Forum: Projekte

Ich möchte hier mal ein kleines Update veröffentlichen, weil wir vorgestern eine Besprechung hatten und zu einer starken Veränderung in unseren Plänen gekommen sind.

Die bisherigen Arbeiten am Fußballmanager sind vorerst gestrichen und werden erstmal in abgeschwächter Form von mir weitergeführt.

Stattdessen haben wir uns auf ein neues Konzept geeinigt: Der Fußballmanager wird zum Browsergame! Hier schonmal ein paar kleine Einzelheiten:

Es soll ein Ligensystem geben, in dem jeder mit seiner Mannschaft antreten kann. Man kann einen Trainingsplan entwerfen und so seine Mannschaft auf die Spiele an zwei Tagen (voraussichtlich Mittwoch und Samstag) vorbereiten. Es wird einen festen Ablauf von Saisons geben, in die man nicht quereinsteigen kann und stattdessen Zeit für eine Vorbereitung hat. So kann man für die nötigen Konditionellen Werte sorgen und sich beim Training mehr auf die fußballerischen Fähigkeiten konzentrieren.

Auf- und Absteiger wird es natürlich auch geben, sodass es zu einem Kraftakt wird, in eine höhere Liga aufzusteigen und sich dort zu halten. Doch auch wirtschaftliche Faktoren spielen eine große Rolle, denn ein überschuldeter Verein wird bei uns nicht ohne Sanktionen davonkommen. So soll eine möglichst gute Balance zwischen Spaß und Schwierigkeit geschaffen werden, um Einsteiger nicht zu verschrecken und trotzdem eine Herausforderung für die Hobby-Manager dieser Welt zu stellen.

Es wird höchstwahrscheinlich Anfang nächster Woche losgehen und wir hoffen, schneller Ergebnisse präsentieren zu können.

Wir werden speziell in unserem Forum hin und wieder einen Stand rausgeben, also verfolgt uns doch bis dorthin. :)

Thema: DbDataWriter mit "SequentialAccess"
Am im Forum: Datentechnologien

Die reine Erklärung der WRITE Methode reicht mir denke ich schon. Damit sollte ich im Stande sein, mein Problem zu lösen. Wenn ich dennoch auf Probleme stoße, melde ich mich wieder.

Thema: DbDataWriter mit "SequentialAccess"
Am im Forum: Datentechnologien

Ich synchronisiere bereits perfekt von der globalen (SQL Server) in die lokale (CE). Jetzt muss ich allerdings noch die andere Richtung abdenken, sollte lokal etwas verändert werden. Dann muss ich von CE nach SQL Server.

Ich glaube ich habe Varbinary falsch eingeschätzt. Ich dachte bisher, dass MAX bloß für die Grenze von 8000 steht. Also könnte ich image durch VARBINARY(MAX) ersetzen und mit der VARBINARY WRITE Methode arbeiten?

Thema: DbDataWriter mit "SequentialAccess"
Am im Forum: Datentechnologien

Ich benutze CE nur für die lokale Datenbank, da darf ich also auch ganze Datensätze hinzufügen, ohne dass das Netzwerk etwas mitbekommt. Den schrittweisen Zugriff brauche ich für SQL Server 08.

Zu deinem Vorschlag muss ich dir leider folgendes bezogen auf TEXTPTR Zitieren: "Diese Funktion wird in zukünftigen Versionen von Microsoft SQL Server nicht mehr bereitgestellt. Verwenden Sie diese Funktion beim Entwickeln neuer Anwendungen nicht, und planen Sie das Ändern von Anwendungen, in denen es zurzeit verwendet wird. Alternative Funktionen sind nicht verfügbar."

Und ohne das komm ich ja nicht an den Varbinary-wert, somit fällt die Write Methode auch weg.

Thema: DbDataWriter mit "SequentialAccess"
Am im Forum: Datentechnologien

Hallo Florian,

den SequentialAccess benutze ich, um größere Spalten vom Typ 'image' in Schritten auszulesen, da die Daten dort sehr groß werden können. Jetzt brauche ich eine Methode, wie ich auf dem gleichen Weg große Daten in kleinen Schritten wieder in die DB kriege. Mit Update kann ich leider nicht arbeiten, da der '+'-Operator nicht mit image gültig ist (andere Datentypen kommen nicht in Frage wegen der Größe der Binärdaten).

Also reicht mir das Zeilenweise schreiben nicht, sondern ich muss erstmal alle Spalten einzeln schreiben und dazu nochmal die großen Spalten in kleinen (10KB) Schritten abarbeiten. Das dient dazu, dass ich während des Vorgangs immernoch einen Geschwindigkeitsanpassung vornehmen kann.

Mit dem Sync Framework habe ich zuerst gearbeitet, aber es bietet mir nicht die Möglichkeit, diese kleinen Schritte darzustellen. Deshalb habe ich bereits begonnen, es zu Fuß zu schreiben.

Darunter waren jetzt wohl Informationen, mit denen ich direkt hätte rüberkommen können, deshalb hoffe ich man kann jetzt etwas mit mit meinem Problem anfangen.

Thema: DbDataWriter mit "SequentialAccess"
Am im Forum: Datentechnologien

verwendetes Datenbanksystem: MS SQL Server 2008

Tag zusammen,

aktuell schreibe ich einen Synchronisationsvorgang, der eine globale DB (s.o.) lokal ablegt (Compact Edition). Dieser läuft als Windows Dienst im Hintergrund und soll somit möglichst wenig die CPU/das Netzwerk belasten. Dafür habe ich beim Lesen die Möglichkeit des SequentialAccess beim DbDataReader entdeckt, aber was mir fehlt ist ein Gegenstück zum Schreiben.

Dass es einen DataWriter nicht gibt ist mir klar, aber die Frage die sich mir stellt ist, ob es überhaupt möglich ist. Ich habe zumindest noch nicht davon gehört, dass man in Schritten in eine Datenbank bzw. einen Datensatz schreiben kann.

Wäre nett, wenn sich dazu jemand äußern würde. :)

Thema: Opensource Fussballmanager
Am im Forum: Projekte

Aktuell steht einiges still, weil jeder andere Verpflichtungen vorzieht. Es ist und bleibt ein Freizeitprojekt und die ist gerade Mangelware bei jedem von uns. Aber gut, dass du mich nochmal dran erinnerst. Ich werde demnächst nochmal genau nachhaken, wie es weitergehen wird und wenn es etwas Konkretes zu vermelden gibt, wird es hier auftauchen.

Thema: Scrollen in Listbox - Wie krieg ich das mit?
Am im Forum: GUI: Windows-Forms

Ich habe mich heute auch mit diesem Thema beschäftigt und bin auf eine Lösung gekommen, die keine eigene ScrollBar verwendet. Die ListBox hat eine Property TopIndex, die den Index des Items angibt, der nach einem ScrollVorgang als oberstes Item gezeichnet wird. Wenn man nun diesen Index z.B. beim Zeichnen abfängt und mit dem gespeicherten letzten Stand vergleicht, merkt man leicht, ob gescrollt wurde oder nicht, sogar in welche Richtung.

Thema: Sockets + Chatfenster = Freeze
Am im Forum: Netzwerktechnologien

So, da bin ich nochmal.

Es läuft jetzt alles mehr oder weniger rund. Allerdings stört es mich immernoch, dass meine komplette GUI einfriert, sobald ich in einer mit einem neuen Thread gestarteten Klasse (Connection) ein Thread.Sleep() verwende.

Thread thread = new Thread(new ThreadStart(this.CreateConnection));
thread.Start();

private void CreateConnection()
{
    new Connection(this.connection_ConnectedClient);
}

In dieser Klasse warte ich aus Sicherheitsgründen immer auf eine Antwort des Gegenübers bis ich weitersende. Das sieht dann so aus:

do
{
    System.Threading.Thread.Sleep(waitLength);
} while (!this.sendFinished);

Das eigentliche Problem könnte wohl daran liegen, dass ich zu einer hergestellten Verbindung ein ChatFenster bereitstelle, welches ich natürlich nur im GUI-Thread erstellen kann. Somit könnte es doch sein, dass mein Vorhaben gar nicht so möglich ist oder?

Bin für jede Antwort dankbar. ;)

Edit: Hat sich keiner mehr gemeldet und war wohl auch nicht nötig, habe es jetzt irgendwie zusammengeschustert.

Thema: Sockets + Chatfenster = Freeze
Am im Forum: Netzwerktechnologien

Hallo Rainbird,

danke schonmal für die Links. Ich habe mich in den Programmen ein wenig umgeschaut und zumindest scheint das oben angesprochene Problem mit den Ports nicht schlimm zu sein, es ist dort nämlich genauso.

Jedoch ist die Methode der Übertragung ein wenig anders, außerdem wird ein wirklicher Server verwendet. Ich will allerdings eine P2P-Verbindung aufbauen und keinen Chatroom.

Edit: Es funktioniert jetzt soweit, allerdings immernoch nur mit ShowDialog(). Mein Hauptfenster scheint dadurch zwar nicht blockiert zu werden, was mich ein wenig sehr verwundert, aber es klappt zumindest.

Thema: Sockets + Chatfenster = Freeze
Am im Forum: Netzwerktechnologien

Hallo Rainbird,

es gilt hauptsächlich der Übung und des Verständnisses. Einfacher geht es quasi immer, aber warum nicht mal zu Fuß sowas machen, um es wirklich verstanden zu haben. Außerdem bin ich schon zu weit, um jetzt "aufgeben" zu wollen.

Edit: Btw. habe ich noch eine kurze Frage zum Thema Sockets. Und zwar läuft der Austausch nicht wirklich, da ich nur von Server zu Client, aber nicht von Client zu Server Daten senden kann. Beim EndPoint des Clients ist der Port angegeben, über den ich kommunizieren will, beim Server jedoch steht ein anscheinend zufälliger Port. Ich nehme an, dass das der Grund ist, aber wieso ist das so, wenn ich die Verbindung doch auch über diesen Port aufbaue? Der Socket, der bei EndAccept() entspringt hat plötzlich diesen anderen Port.