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 Programmierhans
Thema: Einfacher Dateimanager
Am im Forum: Projekte

Ist der Name FailManager ein fail ? oder ein absichtliches Wortspiel ?

Thema: OpenFileDialog V2 - NOTools.FileSystemDialogs
Am im Forum: .NET-Komponenten und C#-Snippets

Lade bitte noch einen PrintScreen rauf

Thema: Bug in Visual Studio 2012: Invalid Resx file - Wie umgehen?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

VisualStudio schliessen und neu aufmachen löst solche Fehler meistens (jedenfalls bei mir).

Thema: HttpUtility.HtmlEncode mit MemoryLeak
Am im Forum: Web-Technologien

Ich habe jetzt aufgrund der Kritiken das ganze in einem Minimalprojekt nachgebaut. Kein erhöhter Memoryverbrauch sichtbar... aber es handelt sich bei mir um einen CodeGenerator (der ist 32-Bit und wird aus VS mit Java aufgerufen... und da ist der Unterschied massiv)...

(Und es ist definitiv der einzige Unterschied gewesen zwischen den Tests).

Wieso auch immer

Thema: IIS: regelmäßigen Job ausführen
Am im Forum: Web-Technologien

Du könntest auch den WebService in einem eigenen WindowsService statt in IIS hosten... dann hast Du die volle Kontrolle und brauchst nicht mal einen IIS

Thema: HttpUtility.HtmlEncode mit MemoryLeak
Am im Forum: Web-Technologien

Ich verwende den HtmlEncode in der Code-Generierung auf dem CodeDom... um Comments aus Metadaten in den Code rein zu generieren....

D.h: ich rufe innerhalb weniger Sekunden HtmlEncode mehrere 10'000 mal auf... und dann macht es sehr wohl einen Unterschied... alle diese Writers warten auf den GC... und bei einer sauberen Implementierung würde der Speicher sofort freigegeben.

Mit Microsoft-Implementierung: Abbruch bei knapp über 3 GB Speicherverbrauch... nach Umbau auf eigene Implementierung bleibt der Speicherverbrauch von Visual Studio unter 900 MB..

Klar ist ein extremes Beispiel (ich generiere 388'415 Zeilen Code... und davon sind sicher mind. 10 % Kommentare).

Gruss
Programmierhans

Thema: HttpUtility.HtmlEncode mit MemoryLeak
Am im Forum: Web-Technologien

Zitat von Abt

AntiXSS.HtmlEncode(myString);

Nein die scheint sauber zu sein.

Gruss Programmierhans

Thema: HttpUtility.HtmlEncode mit MemoryLeak
Am im Forum: Web-Technologien

Heute per Zufall entdeckt:

HttUtility.HtmlEncode ist von Microsoft extrem stümperhaft implementiert. In den von dieser Methode aufgerufenen Funktionen werden StringWriter verwendet... diese befinden sich aber weder in einem using noch wird ein Dispose aufgerufen... somit ist man auf die Gnade vom GC erlöst zu werden angewiesen.

Edit: Betrifft nur die Variante welche einen String als Input hat... man kann auch selber einen Wrapper schreiben welcher den StringWriter selber erstellt und nachher disposed.

--> besser den HtmlEncode selber machen... dann leakt es nicht und ist je nach Implementierung auch noch schneller.

Gruss
Programmierhans

Thema: Panels verschachteln, bzw. gruppieren?
Am im Forum: GUI: Windows-Forms

Zitat von ThomasE.
Also bis jetzt war ich noch nie in dieser Situation, selbst mit so vielen Controls..

Dann kannst Du froh sein... war eine meiner Jugendsünden ... und echt übel da wieder rauszukommen.

Thema: Panels verschachteln, bzw. gruppieren?
Am im Forum: GUI: Windows-Forms

Zitat von herbivore
Zum Beispiel ist die Schachtelung von Controls unter Windows Forms eher die Ausnahme (mal eine GroupBox, das war es meistens schon)

Unter Winforms wird aber viel mit UserControls usw. gearbeitet... also ist auch da eine Schachtelung sehr gebräuchlich.

Gruss
Programmierhans

Thema: Panels verschachteln, bzw. gruppieren?
Am im Forum: GUI: Windows-Forms

Zitat von herbivore
Schon ab 100 Controls auf einem Form kann es auf langsamen Rechnern zu Performance-Problemen kommen, ab mehreren 100 auch auf schnellen Rechnern.

Jedes Control braucht ein oder mehrere Windows-Handles... diese sind beschränkt... und wenn alle verbraucht sind, dann läuft auf dem Rechner genau gar nichts mehr (nicht mal mehr eine Fehlermeldung... da diese auch ein Handle brauchen würde)... In diese Situation willst Du sicher nicht reintreten...

Thema: NetworkStream in Datei speichern + Fortschrittsanzeige des Downloads
Am im Forum: Netzwerktechnologien

current = fs.Read(buffer, 0, buffer.Length);
netStream.Write(buffer, 0, buffer.Length); <-- current statt buffer.Length

Thema: Plugin soll Features der Host-Anwendung nutzen, z.B. Datenbankzugriff
Am im Forum: Rund um die Programmierung

Verwende Interfaces

Thema: Der Typeninitialisierer für SAP.Middleware.Connector.RfcDestinationManager hat eine Ausnahme verursa
Am im Forum: Rund um die Programmierung

Such mal nach sap r3dllinst

Offtopic: Sap.connector.dll gehört zu SapNco 2 die kannst Du meiner Meinung nach entfernen. (Du verwendest ja SapNCO3)

Edit: 2 Posts zusammengefügt

Thema: Reporting Tool gesucht - Erfahrungen mit List and Label
Am im Forum: Rund um die Programmierung

In unserer Firma verwenden wir ebenfalls LL.

Bisher hat einzig genervt, dass sich die Schnittstelle verändert hat (musste ich bei einem Update nachziehen)... die Schnittstelle sieht zu wenig nach .Net aus ....

Aber es läuft sehr gut / ist stabil... und der Support von LL hat mal extra für uns eine Anpassung vorgenommen (es war nicht wirklich ein Fehler sondern unsere Strategie war nicht wirklich kompatibel zur LL-Strategie).

Von mir ein knapp empfehlenswert.

Gruss
Programmierhans

Thema: Größe des MonthCalendar ändern
Am im Forum: GUI: Windows-Forms

Ist defintiv ein Bug... hat mir vor ein paar Monaten auch graue Haare beschert.

Thema: VS2012: Designer verlangt falsche Assembly-version
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Lies mal dies: UserControl kann im Designer nicht hinzugefügt werden

Dann kannst den Designer debuggen. Scheint so, als hätte der Designer Objekte deines Dll oder Exe z.B in ein Resx serialisiert.... Bei der bin- Deserialisierung braucht er nun wieder das alte Dll

Gruss Programmierhans

Thema: Beim Implementieren eines Interfaces mit Event speziellen Delegatentypen verwenden
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

[FAQ] Casten aber richtig: () / is / as

Thema: VS2012: Designer verlangt falsche Assembly-version
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ev. ein Referenzpfad gesetzt aus welchem er sich immer eine alte Version zieht (schon oft in VB-Projekten gesehen)

Thema: Richtextbox - alignment springt hin und her
Am im Forum: GUI: Windows-Forms

Zitat von MSDN
You must be careful not to manipulate any user-interface objects in your DoWork event handler. Instead, communicate to the user interface through the BackgroundWorker events.

[FAQ] Warum blockiert mein GUI?

Thema: Message that the cursor is currently pointing to has been removed from the queue by another process
Am im Forum: Rund um die Programmierung

Mach doch eine Transaction...

ev. versucht eine andere App den Eintrag schon zu lesen/verarbeiten/entfernen bevor Du den fertig reingestellt hast.

Thema: Controls während der Laufzeit auf den Startzustand zurücksetzen
Am im Forum: GUI: Windows-Forms

Wenn Du den Code in InitializeComponent genau anschaust, dann wirst Du sehen, dass darin auch die ganzen Objekte erstellt werden.

Du hast somit zwei Möglichkeiten:

1) alles per Code initialisieren (dann aber aufpassen, dass Anpassungen im Designer dann synchron sind mit deinem Code)

2) Wegschmeissen und neue Instanz erstellen.

Thema: DataView Rowfilter -> DateTime to Time
Am im Forum: GUI: Windows-Forms

Redundant wird es ja erst wenn Du es auf der DB SPEICHERST !

Thema: Maximale Anzahl an SubControl-Ebenen? [==> Keine harte Beschränkung aber Performance-Problem drohen]
Am im Forum: GUI: Windows-Forms

Und ab einer gewissen Anzahl Controls sind dann die verfügbaren WindowHandles aufgebraucht und die Anwendung raucht ab (nicht abfangbarer Fehler)

Thema: Tcp Client hängt sich auf wegen timer - andere Möglichkeit?
Am im Forum: Netzwerktechnologien

[FAQ] TcpClient: einfaches Beispiel

Thema: TCP Client hängt sich beim trennen auf
Am im Forum: Netzwerktechnologien

[FAQ] TcpClient: einfaches Beispiel

Thema: Entwicklung im Team, aber gewisse dll's nur an Einzelplatz
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Bei der BadImageFormatException stand ja schon drin dass es an der Version liegt :-)

--> Die Assembly wird von einer Laufzeit erstellt, die aktueller als die derzeit geladene Laufzeit ist, und kann nicht geladen werden.

Thema: [geschlossen] Entity Framework mit Tabellen die sich selbst referenzieren (Hierarchie)
Am im Forum: Datentechnologien

Da scheint auf der Root-Ebene die Einschränkung auf ParentID=null zu fehlen.

Thema: DataSet - Schneller Zugriff auf Fremdschlüssel
Am im Forum: Datentechnologien

In Memory-Selects waren schon immer lahm...

Du hast ja schon die ParentRow... Also mach es doch mit:

DataRow.GetChildRows-Methode

dann müssten auch die Indizes verwendet werden...

Gruss
Programmierhans

Thema: Auomatische Anpassung der TextBox-Größe funktioniert nicht
Am im Forum: GUI: Windows-Forms

Offtopic:

Du kannst den Speicherbedarf noch optimieren.... wenn Du das Graphics nach Verwendung disposed...


using (Graphics g=this.CreateGraphics(.......)
{

}