Laden...
F
Benutzerbeschreibung

Forenbeiträge von frank# Ingesamt 21 Beiträge

26.05.2010 - 16:53 Uhr

Hm, psexec macht aber eigentlich genau das Geforderte. Halt nicht in C#, aber es zeigt zumindest die prinzipielle Machbarkeit auf...

Gruß, Frank

21.05.2010 - 11:50 Uhr

Laut MSDN

wird WM_SIZE ausgelöst, mit einem wParam von SIZE_MAXIMIZED.

Gruß, Frank

08.04.2010 - 11:31 Uhr

Hallo,
wenn ich mich hier mal einklinken dürfte:

  1. Mehrere DataReceivedEvents können parallel anliegen.

Woher kommt diese Aussage? Ist das aus Erfahrung, also in der Praxis schon mal aufgetreten, oder ist das irgendwo dokumentiert?

MSDN sagt:

The DataReceived event is raised on a secondary thread when data is received from the SerialPort object. Because this event is raised on a secondary thread, and not the main thread, attempting to modify...

Also das DataReceivedEvent wird in EINEM zweiten Thread ausgelöst, daraus interpretiere ich zumindest dass nicht zwei Ereignisse GLEICHZEITIG in mehreren Threads ausgelöst/abgearbeitet werden. Das würde es ja auch nahezu unmöglich machen, die Bytes in der richtigen Reihenfolge wieder zusammenzusetzen...

Oder seh ich was falsch?

Gruß, Frank

05.06.2009 - 15:36 Uhr

Das liegt daran, daß das WindowsFormsHost Control, und um ein solches geht es ja bei dem Artikel auf CodeProject, IMMER über WPF Inhalten liegt. Es liegt m.E. nicht an OpenGL. Den gleichen Effekt müsstest du also bekommen, wenn du ein anderes WinForms Control, bspw. ein Grid, in einem WindowsFormsHost in einem AvalonDock MDI-Fenster hostest.

Gruß, Frank

22.04.2009 - 00:25 Uhr

Eine Möglichkeit zur Verbesserung:


        public static string GetBinary (int value)
        {
            string result = string.Empty;
            while (value > 0)
            {
                int rest = value % 2;
                result = rest.ToString () + result;
                value /= 2;
            }
            return result;
        }

oder besser einfach das Framework verwenden:


        public static string GetBinary (int value)
        {
            return Convert.ToString (value, 2);
        }

Gruß, Frank

10.12.2008 - 20:50 Uhr

Hab's eben ausprobiert: die BadImageFormatException bekommt man auf Vista 64 mit der falschen Assembly. Für Vista 64 muss man die Assembly aus dem x64 Verzeichnis einbinden. Die aus dem Hauptverzeichnis geht wohl nur auf 32Bit Systemen. Ebenso die Assembly aus dem ManagedOnly Verzeichnis. Für die würdest du dann aber tatsächlich noch die sqlite3.dll benötigen.

Gruß, Frank

P.S. FYI: Dein Test benötigt bei mir 900ms (Core 2 Duo E6600@2.4GHz, 4GB, Vista 64)

10.12.2008 - 17:26 Uhr

Für den Provider von

http://sourceforge.net/projects/sqlite-dotnet2/

brauchst du die sqlite3.dll nicht, siehe Readme:

Distributing The SQLite Engine and ADO.NET Assembly

On the desktop, only the System.Data.SQLite.DLL file needs to be distributed with your application(s). This DLL contains both the managed wrapper and the native SQLite3 codebase.

Gruß, Frank

15.08.2008 - 01:03 Uhr

Eins ist mir noch eingefallen, was IMHO auch gegen ein Repository für alles spricht: Labels gehen über das gesamte Repository, nicht über ein Projekt.

Ich nehm mal an, du meinst mit Label einen 'tag'? Und der stellt in SVN ja nur eine Kopie des getaggten Verzeichnisses dar. Man erzeugt also einen tag, indem man eine Kopie seines Projektverzeichnisses im Repository erzeugt. Man muss nicht das gesamte Repository taggen. Und bei Bedarf (sprich: ich brauch 'Master 2005' wieder) check ich halt den tag (also die Kopie) aus.

Ganz abgesehen davon, dass die Checkin-Logs saumäßig unübersichtlich werden ...

Nur, wenn du dir die Logs vom gesamten Repository anschaust. Schaust du nur die deines Verzeichnisses an, ist es genauso übersichtlich, als wenn du pro Projekt ein Repository hättest.

Noch was zur Performance: Wir sind nun bei Revision ca. 11000. Ein Projekt mit ca. 4000 Dateien benötigt ca. 30 Sekunden für ein Update (auf einem älteren PC, Athlon 3000+, 160GB SATA, 2GB). Also soweit eigentlich keine Probleme.

Noch was pro 1 Repository: Synchronisation. Wir synchronisieren das Repository per post-commit-hook auf einen zweiten Rechner. Das jedesmal pro Projekt für ein neues Repository einzurichten ist, wenn auch gering, wieder Aufwand.

Gruß, Frank

14.08.2008 - 00:00 Uhr

Ich hab ja auch nicht geschrieben, dass meine Aussage die allein richtige Variante wäre - es wurde ja explizit danach gefragt, wie ICH es handhabe.

Sicher sicher! Nix anders hab ich behauptet.

OK, Projekte auf mehrere Server verteilen geht so nicht. Klar. Performancetechnisch haben wir (20 Mann Firma) halt auch noch keine Probleme... Benutzerrechte kann man ja aber auch Verzeichnisweise erteilen, also ob man nun Rechte pro Repository oder pro Verzeichnis vergibt, ist eigentlich egal.

Quelltext sollte es IMHO nur ein einziges Mal geben, ansonsten ist die Gefahr für Copy / Paste viel zu hoch

Aber den Quelltext gibt es bei external ja nur einmal (im Repository). Klar, in der Arbeitskopie wird er ausgecheckt, aber Änderungen landen ja im Repos. an der richtigen Stelle.

13.08.2008 - 23:39 Uhr

Das ist ja nun Glaubenssache...
Wir haben in der Firma für alles was jemals an Quelltext entstanden ist nur ein Repository. Unterteilt in Unterverzeichnisse pro "Projekt" (was immer das auch bedeutet), darunter dann trunk, branch und tags. Soll in einem Projekt mal Quelltext von anderen Projekten verwendet werden, wird er als external eingebunden.

Gruß, Frank

13.08.2008 - 23:33 Uhr

Ergänzend: Die Revisionsnummer wird sich mit jedem commit um 1 erhöhen, egal, was beim commit geschieht. Jede Änderung des Repository erhöht die Revisionnr., auch wenn man z.B. einen branch anlegt. Und: Subversion weiss nichts von VisualStudio Projekten. Evtl. kennt VisualSVN als Plugin für VS Projekte, aber für das "Backend" Subversion, für das VisualSVN und TortoiseSVN nur eine GUI sind, sind das alles nur Dateien, die pro Änderungssatz, dem commit, eine neue Revision im Repository erzeugen. Die Arbeitsweise von Subversion sollte man IMHO unbedingt verstanden haben, wenn man mit sowas wie VisualSVN oder Tortoise arbeitet. Dann ist es aber auch total prima 😉

Hier der Link zum Buch:
SVN Book

Gruß, frank#

31.07.2008 - 16:47 Uhr

Sowas würde ich eher in nem Batchjob erledigen mit wget:


wget -r ftp://servername/directory/

Oder zumindest das wget mittels Process.Start() ausführen...

Gruß, Frank

12.06.2008 - 16:41 Uhr

Vorzeichenloses Right Shift >>>

In C# ists >>

Ist es eben nicht. Es gibt in C# kein Äquivalent zum Java >>>.
Aber man kann vorher auf uint casten und dann shiften.

Gruß, Frank

05.06.2008 - 12:58 Uhr

Hab's eben getestet, mit exakt demselben Quelltext, funktioniert einwandfrei.
Stimmt dein Host?

Gruß, Frank

27.03.2008 - 09:02 Uhr

scriptpath=`dirname $0`

Gruß, Frank

14.03.2008 - 08:11 Uhr

Icon Sushi. Kein Editor, erstellt nur aus Bitmaps Icondateien. Auch in mehreren Auflösungen, transparent usw.

http://www.towofu.net/soft/e-aicon.php

Gruß, Frank

06.03.2008 - 20:33 Uhr

TimeZoneInfo hat eine statische Methode GetSystemTimeZones(), die dir eine Collection von TimeZoneInfo-Objekten liefert. Über den BaseUtcOffset bekommst du den Offset zur UTC, musst dir halt eine passende raussuchen. In DisplayName stehen dann die Städte, in StandardName sowas wie " Malaysische Halbinsel Normalzeit".

Gruß, frank#

05.03.2008 - 22:21 Uhr

Hallo ThomasR,

um das Projekt auf den Testrechner zu bekommen, kannst du einfach die ganze working copy, also das ganze ausgecheckte Verzeichnis, auf den Testrechner kopieren und dort modifizieren. Es ist nicht nötig, die .svn-Verzeichnisse auszulassen.
Zum Übertragen der Änderungen ins Subversion kannst du das Verzeichnis des Testrechners wieder auf den Ursprungsrechner kopieren (wieder komplett), und zwar am besten in ein temporäres Verzeichnis, und dann die Änderungen einchecken (commit). Oder du arbeitest auf einem USB-Stick, dann kannst du direkt von diesem aus einchecken. In beiden Fällen machst du anschließend auf deiner Ursprungs-working-copy ein Update, wodurch die Änderungen, die du gerade eingecheckt hast, in deine Ur-working-copy eingepflegt werden. Die temporären Kopien kannst du anschließend entsorgen.

Gruß, frank#

25.02.2008 - 09:00 Uhr

Das Problem liegt im Konstruktor. Du legst eine lokale TextBox-Variable an, die gleichnamige Member-Variable wird nie initialisiert:


TextBox antwort= new TextBox();
antwort.Parent = this;
antwort.Location= new Point(30, 130);
antwort.Name= "antwort";

Im buttonClickOK()-Handler greifst du dann auf die Member-TextBox zu, was dann die NullReferenceException auslöst.

Gruß, Frank

29.01.2008 - 22:11 Uhr

Hallo,
ich evaluiere momentan VistaDB.
Was soll ich sagen? Tut, was man von ihr erwartet, ist 100% managed, eine Assembly, Datenbankgröße liegt nicht bei 4GB, wie beim SQL Server CE, sondern bei 4TB, Multi-user-fähig (mehrere Prozesse auf demselben DB-File), Multi-Thread-fähig. Die Roadmap verspricht für Quartal 2 noch Sync Services und LINQ to Entities.
Auch der Preis hält sich im Rahmen, momentan gelten noch Version 3.3 Einführungspreise.

Vom SQL CE halten mich insbesondere die 4GB ab, weil die bei uns doch mal überschritten werden könnten.
SQLite ist wohl nicht besonders gut beim Threading, hab ich mal gelesen...

Grüße, Frank

29.01.2008 - 21:57 Uhr

Hallo,
das Thema interessiert mich auch, da bei uns in der Firma demnächst Visual Studio Lizenzen angeschafft werden sollen, deshalb hab ich mich auch mit den Versionsunterschieden beschäftigt und momentan die 2008 Pro Trial installiert.

Erstmal zwei Antworten:*Der Class Designer erlaubt das Editieren von Klassen UML-mäßig, sprich: Rechtsklick auf ein Klassensymbol, Add Method aus dem Kontextmenü wählen usw. Vorhandene Klassen können aus der Class View in die Arbeitsfläche des Class Designers hineingezogen werden, neue Klassen können ebenfalls per Kontextmenü erstellt werden. *Die Object Test Bench erlaubt es, in der IDE Klassen zu instanzieren. Grafisch sieht das auch UML-like aus, das Objekt ist allerdings live. Man kann Eigenschaften abfragen, Methoden aufrufen usw. Die Rückgabewerte von Methoden können dann wiederum in der Object Test Bench als Objekte gespeichert werden.

Unterschiede, zu denen ich auch Fragen hätte: *Fehlender Server-Explorer. Braucht man den für die tägliche Arbeit? Oder anders: Ich arbeite mit der 2008 Trial seit sie erschienen ist und hab den Server Explorer nie benutzt -- hab ich was falsch gemacht? 😉

*Fehlende Crystal Reports. Reporting werden wir in unseren Projekten auf jeden Fall brauchen. Taugt die in der Pro enthaltene CR Edition was (haben wir noch nicht getestet)? Welche Alternativen gibt es so (natürlich preisgünstig...)? *Simplified User Experience. Kann wirklich niemand dazu was sagen? Ich hatte mal eine VS2005 Standard, ich wüsste spontan nicht, ob diese auch eingeschränkt gewesen wäre. Aber die hatte ja auch noch Features, für die man jetzt die Pro braucht...

Was ich nicht vermissen würde sind: Entwicklung für Office, Unit Tests (NUnit existiert...), Entwicklung für Mobilgeräte. Auch die unterschiedlichen SQL Server Editionen sind mir egal. Für mich stellt sich das momentan so dar (Erfahrung aus der täglichen Arbeit), daß wir ca. 500 EUR mehr bezahlen würden für Crystal Reports und etwas UML-Dokumentation (weil zum Klassendesign haben wir den Class Designer noch nicht verwendet...).

Grüße, Frank