Laden...
Avatar #avatar-3339.png
Uwe Keim myCSharp.de - Member
IT-Entwickler Göppingen, bei Stuttgart Dabei seit 19.08.2005 32 Beiträge
Benutzerbeschreibung

Forenbeiträge von Uwe Keim Ingesamt 32 Beiträge

12.02.2015 - 18:59 Uhr

Na wenn du das sagst.

12.02.2015 - 15:03 Uhr

Ich finde ja auch GUIs interessant à la Macaw, Atom.io oder Brackets:

Die verwenden ein gehostetes Chromium, das dem Benutzer als eigenständige Anwendung präsentiert wird und zum Teil im Hintergrund Node.js benutzt.

Da kannst Du dann/musst die GUI in JavaScript machen, was den Vorteil hat, dass Du alle stilistischen Möglichkeiten von HTML+CSS hast.

Nachteil ist sicherlich eine deutlich höhere Lernkurve und bescheidenere Debugging-Möglichkeiten verglichen mit einer WinForms-Anwendung.

26.01.2015 - 08:13 Uhr

Ich danke Euch sehr für Eure ausführlichen Antworten!

25.01.2015 - 17:08 Uhr

Aus meiner Sicht seid u.a. Ihr der lebende Beweis dafür, dass es einen Bedarf für deutsche Programmier-Ressourcen gibt.

25.01.2015 - 16:41 Uhr

Klingt vernünftig, danke für Deine Rückmeldung!

25.01.2015 - 16:19 Uhr

Ggf. kennt Ihr Discourse, eine "neue" Open-Source-Forensoftware.

Entwickelt hat das einer der Stack-Overflow-Gründer. Er hat das seinerzeit in seinem Coding-Horror-Blog ausführlich begründet, warum er die Foren-Software entwickelt.

Weil ich die Software so wahnsinnig viel benutzerfreundlicher finde als alles andere, was zurzeit auf dem Markt ist, schlage ich hiermit vor, dass Ihr Euer Forum hier auch auf Discourse umstellt.

Allein schon das Feature, dass es keine Signaturen gibt, ist für mich das Killer-Feature schlechthin.

Ein aktuelles Beispiel einer deutschen Community, die auch Discourse einsetzt ist das Sendegate-Forum, bei dem es thematisch rund um das Podcasting geht.

25.01.2015 - 16:14 Uhr

Guter Punkt!

Es ist wohl so, dass viele Proposals auf Stack Exchange in der Beta-Phase mangels Beteiligung wieder eingestellt werden.

Ein Versuch finde ich es auf jeden Fall Wert, ich werde versuchen, mich da auch aktiv zu beteiligen.

25.01.2015 - 15:43 Uhr

Ggf. ist das für den einen oder anderen für Euch auch interessant:

Es läuft zurzeit eine Abstimmung für ein Stack Overflow in Deutsch.

Ziel ist es, Entwicklern, die im Deutschen deutlich flüssiger unterwegs sind als im Englischen, auch eine hochwertige Anlaufstelle rund ums Programmieren (also auch Abseits von reinem C#) zu bieten.

Falls Euch das gefällt, votet gerne mit, zurzeit sind 92% der Stimmen zusammen.

22.02.2012 - 07:07 Uhr

Hallo liebe Nutzer 😉

Als Autor von Zeta Resource Editor will ich gerne helfen, dass Ihr besser mit dem Programm arbeiten könnt.

Wenn Ihr wollt, könnt Ihr mir mal ein Beispielprojekt samt RESX-Dateien zusenden, dann schaue ich mir das gerne an.

Ich bin immer offen für Vorschläge, zudem könnt Ihr gerne auch am Quelltext Ergänzungen machen und mir die schicken.

Wir haben übrigens auch ein kleines Support-Forum, da bekomme ich schneller mit, wenn es Fragen gibt: http://groups.google.com/group/zeta-resource-editor

Gruß
Uwe

24.08.2005 - 08:56 Uhr

Habe es jetzt via P/Invoke gelöst.

24.08.2005 - 08:05 Uhr

Bei zu langen Dateipfaden (> 260 Zeichen) beim Aufruf der methode File.GetLastWriteTime kommt, wie von Microsoft dokumentiert, eine PathTooLongException.

Frage: wie erreiche ich, daß ich das Änderungsdatum auch bei längeren Dateipfaden abrufen kann?
*Irgendwie den kurzen Dateipfad (Mit Tilde und so) abrufen (z.B. via P/Invoke) und diesen an File.GetLastWriteTime übergeben? *Via P/Invoke GetFileTime aufrufen?

Danke für Eure Tipps!

21.08.2005 - 20:43 Uhr

Schaust Dir mal ein paar Artikel auf CodeProject dazu an.

20.08.2005 - 16:47 Uhr

Du mußt Dich vermutlich an die neue Projektstruktur gewöhnen. C# != C++ (jaja, logisch). Und weil C# != C++ ist auch die Projektstruktur anders.

Ich habe seinerzeit einfach mal mit dem angefangen was die C#-IDE-Jungs mir vorgegeben haben und später dann geschaut was mich wirklich stört. Wenn Du erst mal dran gewöhnt bist, stört fast gar nix mehr 🙂

Also gib VS.NET einfach mal eine Chance! 🙂

20.08.2005 - 16:42 Uhr

Den Aufrufstapel ("Callstack") anschauen! Sonst bist Du ja völlig ahnungslos über den Kontext.

20.08.2005 - 16:15 Uhr

In meinem Projekten lasse ich die Objekte immer sich selber anlegen/speichern/löschen. Dann habe ich alles in einem.

Auch verzichte ich meistens (aber nicht immer) auf einen übergeordneten Manager der Listen von Objekten zurückgibt. Stattdessen lasse ich das Objekt selbst via statischen Methoden Listen zurückgeben.

Z.B.:

public class Pharmacy
{
    public static Pharmacy[] GetAllPharmacies()
    {
        ....
    }

    public static Pharmacy[] SearchForPharmacies(
        string keyWord )
    {
        ....
    }

    ....
}
20.08.2005 - 09:26 Uhr

Kannst ja mal die Seite wo veröffentlichen. Bestimmt findet jemand einen Fehler wenn er sie anguckt (vielleicht sogar ich 😉)

19.08.2005 - 23:07 Uhr

Vermutlich hast Du die Border via CSS schon weggemacht und das bindet ja stärker...

19.08.2005 - 22:23 Uhr

Schau mal hier, die sprechen da über was Ähnliches.

19.08.2005 - 22:15 Uhr

Gugschd Du hier und wartest noch bis zum 7. November 2005 🙂

19.08.2005 - 22:03 Uhr

Mein Verständnis vom .NET-Framework und der Philosophie sieht so aus:

  • Du solltest die Daten mit ADO.NET speichern. Z.B. in einer DB oder einer XML-Datei.
  • Über DataSets kannst Du dann transparent und unabhängig von der zugrundeliegenden physikalischen Speicherung zugreifen
  • Nimmst Du noch typed Datasets hast Du auch die starke Typisierung.

Alternativ könntest Du Dir überlegen die Daten via Serialisierung in ein Speichermedium zu speichern/zu lesen.

19.08.2005 - 20:58 Uhr

Ich mache das so:

private XmlReader GetDocReader( 
	string html, 
	string baseUrl )
{
	SgmlReader r = new SgmlReader();

	if ( baseUrl.Length>0 )
	{
		r.SetBaseUri( baseUrl );
	}
	r.DocType = "HTML";
	r.InputStream = new StringReader( html );

	return r;
}

Und dann so:

/// <summary>
/// Find all links.
/// </summary>
/// <param name="xml"></param>
/// <returns></returns>
private string[] FindAllLinks( 
	XmlReader xml )
{
	ArrayList links = new ArrayList();

	while ( xml.Read() )
	{
		switch ( xml.NodeType )
		{
				// A node element.
			case XmlNodeType.Element:
				string[] linkAttributeNames;
				// If this is a link element, store the URLs to modify.
				if ( IsLinkElement( xml.Name, out linkAttributeNames ) )
				{
					while ( xml.MoveToNextAttribute() )
					{
						foreach ( string a in linkAttributeNames )
						{
							if ( a.ToLower()==xml.Name.ToLower() )
							{
								string linkUrl = xml.Value;
								if ( !IsAbsoluteUrl( linkUrl ) )
								{
									links.Add( linkUrl );
								}
							}
						}
					}
				}
				break;
		}
	}

	return (string[])links.ToArray( typeof(string) );
}

OK, vielleicht etwas kontextlos aber so verwende ich das 😉. Ich denke aber es sind auch beim Original Beispiele dabei.

19.08.2005 - 17:13 Uhr

Tjaja, die verwöhnte Delphi-Jugend 😉.

Mir wäre das relativ wurscht, ob ich jetzt ein Ereignis bekomme oder einfach selbst SgmlReader.MoveToNextAttribute() aufrufe.

19.08.2005 - 15:25 Uhr

In meinen Augen ist das Ausgangsformat schon recht krank. Da würde ich eher schauen, daß ich das sauberer (=maschinenlesbarer) bekomme.

Und falls das nicht geht, mit Regulären Ausdrücken das möglichste an Fehlertoleranz herausholen.

Beim Parsen dann auch die Culture beachten (Punkt und Komma)!

19.08.2005 - 14:57 Uhr

Oder ganz frisch bei CodeProject: "MiniHttpd WebServer"

19.08.2005 - 14:07 Uhr

"Gut" ist ja immer relativ betrachtet, n'est pas? 😉.

Ich verwende den SgmlReader in einigen Projekten zu meiner vollsten Zufriedenheit.

19.08.2005 - 11:27 Uhr

Laut [URL=http://66.249.93.104/search?q=cache:h7HplslEjKQJ:www.megos.ch/support/doserrors.txt+Der+angeforderte+Nachschlageschl%C3%BCssel+konnte+in+keinem+aktiven+Aktivierungskontext+gefunden+werden&hl=de]Google[/url] ist das ein DDE-Fehler:

"DDEML (Dynamic Data Exchange Management Library)
32D9 13017 Der angeforderte Nachschlageschlüssel konnte in keinem aktiven Aktivierungskontext gefunden werden"

Würde ich mal auf einem anderen Rechner testen, vielleicht hakt Dein Browser.

Oder Du füllst explizit die **ProcessStartInfo **aus uns setzt dieses UseShellExecute-flag (oder wie das heißt) auf **TRUE **.

19.08.2005 - 10:59 Uhr

Genau Regulator. Darin habe ich meine RX auch getestet.

Vermutlich liest Du die falsche Eigenschaft aus dem Match-Ergebnis-Objekt der Match()-Methode aus. Da gibt es einige Eigenschaften, schau Dir mal die Doku genau an 🙂

19.08.2005 - 10:40 Uhr

Mist, die Baslashs vor den eckigen Klammern wurden hier gefressen. Diese waren natürlich korrekt bei Dir!

19.08.2005 - 10:33 Uhr

Nimm so was:

\[tag\](.*?)\[/tag\]

Gruß
Uwe