Thomas Wölfers Baustatik-Blog

Thomas Wölfers Baustatik-Blog

Longhorn Community Preview


Habe es dieses Wochenende endlich geschafft mir die aktuelle Community Preview von Longhorn anzusehen. Longhorn ist die nächste Version von Windows, also der Nachfolger von Windows XP und soll 2006 fertig sein.

Nach meinem ersten Eindruck sind die zwei Jahre auch noch ganz gut angelegt: Ich war im großen und ganzen doch eher enttäuscht. Das ist im Wesentlichen auf drei Probleme zurückzuführen - aber die hatten es in sich.

Um der Sache Gerechtigkeit angedeihen zu lassen: Bei der Preview (die bekommt man, wenn man ein MSDN Abo hat) handelt es sich noch nicht um eine Beta, sondern um eine noch deutlich frühere Vorab-Version (bei der unter anderem große Teile des geplanten Userinterfaces Aero und praktisch alle Funktionen des neuen Dateisystems WinFS fehlen).

Meine Probleme bestanden darin, das

  • die Preview meine WLAN Karte (etwa 2 Jahre alt) nicht erkannte und ich darum keinen Internet-Zugang hatte
  • die Preview auch den NVidia Chipsatz meines Laptops nicht richtig unterstützte und die Graphik daher nicht nur in einer schlechten Auflösung zu sehen war, sondern obendrein wahnsinning langsam war. (Langsam := Man kann sehen, wie sich die Fenster stückchenweise aufbauen)
  • und ich obendrein mit 256 MB wohl viel zu wenig RAM im Rechner hatte, denn egal was man tat: Alles führte zu langwierigen Festplattenzugriffen.

Dadurch wurde die ganze Sache extrem langsam. So langsam, das ich in kürzester Zeit die Geduld verlor und die Kiste wieder abgeschaltet habe.

Hübsch ausgesehen hat es ja schon - nur nützt das eben nicht viel wenn man ansonsten nicht viel tun kann...

Ich werde aber natürlich auch weiterhin an der Sache dran bleiben, und Verbesserungen und zukünftige Eindrücke an dieser Stelle weitergeben. Bis dahin wird aber erst einmal wieder Windows XP Service Pack 2 RC1 auf dem Laptop installiert.

Wieso tu ich mir das eigentlich an?

... wäre eine durchaus legitime Frage. Die Antwort ist aber relativ einfach: Ich will natürlich zum einen möglichst früh wissen, wie wir mit der vorhandenen Statiksoftware umgehen müssen, um sicherzustellen das die draußen beim Kunden auch unter Longhorn läuft. Zum anderen möchte ich natürlich sicherstellen, das wir neue Features im Betriebssystem - sofern das geht - auch in unserer Software nutzen. Dazu muss man aber damit arbeiten und darunter entwickeln. Darum wird es meinerseits auch mit Sicherheit einen weiteren Versuch mit Longhorn geben.


Die neue FAQ ist da: Fragen und Antworten rumd um die Baustatik-Software und andere Programme und Tools von D.I.E.


Ab sofort ist die neue Version der FAQ auf www.die.de verfügbar. ( FAQ = Frequently asked questions := Häufig gestellte Fragen.)

Abgesehen das alle Inhalte nochmal gegengelesen worden sind (zumindest fast alle, wir sind noch dabei ein paar Reste zu bearbeiten) hat die neue FAQ einen wesentlichen Vorteil: Sie ist jetzt in das normale Such-Interface integriert.

Mit anderen Worten: Wenn Sie das Such-Feld auf der Startseite von www.die.de verwenden, dann wird jetzt auch die FAQ durchsucht. Bisher war das nicht so - man musste die FAQ mit der dort eingebauten separaten Suche durchsuchen.


Statikprogramme: Nicht als Administrator arbeiten


Wenn Sie unter XP, NT, 2000 oder Windows 2003 mit unseren Statikprogrammen arbeiten, dann müssen Sie zumindest die Installation der Software mit einem Account vornehmen, der administrative Rechte hat.

Arbeiten können Sie dann unter einem normalen Account - aber leider nicht 'sofort'. Wenn Sie das nämlich versuchen, dann erhalten Sie die folgende Fehlermeldung:

Fehler beim öffnen von DIEProfiles.data. Ein anderer Prozeß führt einen Schreibzugriff durch.

Diese Meldung kann man zwar einfach ignorieren - nur nützt das nicht viel: Letztlich bekommt man die Statikprogramme nicht ans laufen. Es geht aber doch, und zwar mit Hilfe eines kleinen Tools, das Sie hier herunterladen können: DIEUserPermissions.

Sie brauchen das Programm bloss einmal unter jedem 'normalen' Account auszuführen, unter dem Sie bereits einmal versucht haben, die Statikprogramme zu starten: Danach gehts so, wie man sich das vorstellt.


Vatertagstipp: Festplatte als Verzeichnis


Wenn Sie in Ihrem Rechner mehrere Festplatten haben, die aber lieber als eine einzelne verwenden möchten, dann ist das unter XP (und Windows 2003) kein Problem. Mit der Datenträgerverwaltung (Systemsteuerung -> Computerverwaltung) können Sie Laufwerke einfach als Verzeichnisse innerhalb eines anderen Laufwerkes einblenden. Klicken Sie dort mit der rechten Maustaste auf das Laufwerk, und wählen Sie dann den Befehl 'Laufwerksbuchstaben und Pfade'. Der Rest erklärt sich von selbst...

Zugegeben: Hat nichts mit Vatertag zu tun, aber ich wollte das Wort unbedingt unterbringen. :-)


Meine Studentenversion geht nicht - oder der Download dauert so lange


Im Rahmen der kostenlosen Studentenversion unserer Statikprogramme (aber auch in einigen anderen Fällen) gibts beim Download und bei der Installation hin- und wieder ein paar Probleme. Hier ein paar Lösungen. :-)

1. Die Mail mit den Lizenzen der Studentenversion enthält keinen Anhang
Das liegt fast immer an einer Einstellung im eMail-Programm, die das öffnen von 'unsicheren' Anhängen verhindert. Wenn man diese Einstellung einmal kurz umstellt, dann kommt man auch an die Anhänge. Die .LIC Dateien die wir versenden sich auch in keinster Weise 'unsicher'.

2. Nach der Installation der Lizenzen erscheint die beim Start der Statiksoftware die Meldung: 'Die Programme sind nicht lizensiert'.
Das kann mehrere Gründe haben:

  • Die Lizenzen befinden sich nicht im richtigen Ordner unter '\programme\die\sys'. Das ist dann der Fall, wenn Sie die Dinger da nicht hineinkopiert haben.
  • Die Lizenzen die sich dort befinden sind abgelaufen. Das resultiert gerne daraus, das die alten Lizenzen in das Verzeichnis kopiert wurden und eben nicht die, die soeben per eMail eingetroffen sind.
  • Die Lizenzdateien wurden zerstört oder nicht richtig heruntergeladen. So nennen einige Mail-Programme und Webdienste Anhänge auch einmal um. Sie brauchen für jedes Programm eine separate Lizenz, und die muss genaus wie das Programm heissen, aber die Erweiterung .LIC haben. Das Programm XRST.EXE benötigt also zum Beispiel die Lizenz-Datei XRST.LIC - und nicht etwa XRST(1).LIC oder XRST.LIC(1) oder ähnliches.

Dann gibts da noch Probleme mit dem Download: Wer nur ein altes Modem sein eigen nennt, bei dem dauert das herunterladen unter Umständen recht lange. Man muss die Software aber nicht unbedingt zu Hause herunterladen: Wir haben nichts dagegen wenn Sie das an der Uni oder bei Kollegen tun und sich dort eine CD mit der Software brennen.

Die Studentenversion gibts außerdem auch auf CD. Und Sie können die auch bekommen wenn Sie auf einer Technikerschule und nicht auf einer Uni sind. :-)


Sein lassen: Keine Klassen vor 'Designable' Klassen - sonst geht nichts mehr


Wenn zwei Forms in einem CSharp File hat, dann meckert das (neue) Visual Studio das an. Was man aber wissen sollte ist, das man auch andere Fälle erzeugen kann die Aerger machen, die das Studio bzw. der Forms Editor nicht anmeckern.

Deklartiert man beispielsweise einen Delegate vor einer Form, dann kann man die Form prima im Forms-Editor bearbeiten, und auch zur Laufzeit geht zunächst alles gut.

z.B.:

namespace DIE.Framework.Controls.TableView.Internal.Grid
{
  public delegate bool KeyPressedDelegate(ref Message msg, Keys keyData);
 
  public class DataGridExt : System.Windows.Forms.DataGrid
  {
     // ...

Wenn mann dann im 'DataGridExt' eine ImageList verwendet, und die mit einem Bitmap ausstattet, dann geht zur Übersetzungszeit auch noch alles gut. Versucht man dann eine Instanz des DataGridEx zu erzeugen, bekommt man eine extrem merkwürdige Fehlermeldung, laut der eine Ressource die zur Sprache passt nicht gefunden werden konnte. Außerdem sei auch die Sprachneutrale Ressource nicht zu finden.

Tolle Sache - nur leider hat die Fehlermeldung mangels Informationsgehalt keinerleich hilfreiche Wirkung.

Das Problem sind nämlich keine fehlenden Ressourcen, sondern einfach nur die Zeile des Delegates. Wenn man die unterhalb der Form platziert, dann geht alles.

Das gilt übrigens für alle Klassen die im Designer bearbeitet werden können: Also auch UserControls und Components, nicht nur Forms sind betroffen.

 


Klasse Tool: Vodafone Mobile Connect Card für GPRS und UMTS


Sowas hatte ich schon lange nicht mehr: Eine Hardware-Erweiterung die absolut gar keinen Aerger gemacht hat. Jetzt war es aber wieder einmal soweit: Ich habe meinem Laptop eine GPRS Mobile Connect Card von Vodafone spendiert.

Dabei handelt es sich um eine GPRS fähige PCMCIA Karte. Man steckt das Ding in einen freien PCMCIA Slot und ist in wenigen Sekunden online. Keinerlei Aerger, keinerlei Treiber-Probleme - einfach alles bestens.

Diesen Blog Beitrag schreibe ich beispielsweise, während ich mit eben dieser Karte online bin. (Sitze gerade im Münchner Flughafen und warte auf den Flug nach Düsseldorf.)

Die Karte gibts in zwei Spielarten: Als reine GPRS Karte und als UMTS/GPRS Karte. Meine kann nur GPRS, aber zum abholen von Mails ist das völlig ausreichend. Man erhält damit eine 56k Verbindung: Das ist etwa so schnell wie man mit gängigen Modems online gehen kann - ein bisschen langsamer als per ISDN.

Dafür geht das überall: Anders als mit WLAN Karten die nur in kleinem Umkreis um das WLAN Emfangsgerät funktionieren, verwendet man bei GPRS das Handy-Netz: Überall wo das Handy funktioniert, funtioniert auch der Internet-Zugang per GPRS.

Bin begeistert. :-)


Das eigene Tragwerk als Bildschirmschoner


Wenn Sie unsere Programme vom CD-Image oder einer echten CD installieren, dann bekommen Sie nicht nur die Baustatik-Software sondern auch ein paar Tools und ein paar Gimmicks. Eines dieser Gimmicks das relativ unbekannt ist, ist der Bildschirmschoner.

Das interessante an diesem Bildschirmschoner ist die Tatsache, das der nicht irgendein D.I.E. Logo am Bildschirm anzeigt, sondern Ihre eigenen Tragwerke in 3D anzeigen kann. Das geht ganz einfach, und zwar so:

Zunächst starten Sie das Programm XRST (das 3D Tragwerksprogramm). Im Programm laden Sie dann einfach eine Ihrer Strukturen, ganz egal welche. Dann gehen Sie ins Menü Ansicht und wählen den Befehl 3D mit Rendering. Das öffnet die 3D-Ansicht mit Ihrer Struktur.

In das 3D-Fenster klicken Sie dann mit der rechten Maustaste und wählen den Befehl 'Daten exportieren'. Das öffnet einen weiteren Dialog, und da klicken Sie auf den Button Datei für den DIE Screensaver erzeugen.

Daraufhin werden Sie nach einem Dateinamen gefragt. Das ist der Name der Datendatei für den Bildschirmschoner. Ist die Datei gespeichert sind Sie im Tragwerksprogramm fertig.

Sie gehen dann in den Windows-Dialog zur Einstellung des Bildschirmschoners. Der D.I.E. Schoner hat den Namen DIEharderSaver. (Der Name kommt daher, das der Bildschirmschoner zu einer Zeit gebaut wurde, als gerade Die Harder mit Bruce Willis im Kino lief. :-) )

Wenn Sie den ausgewählt haben, dann können Sie mit dem Button Einstellungen die zuvor erzeugte Datei auswählen, und auch noch ein paar andere Parameter einstellen.


Infobereich anpassen


Eine Sache die mir immer wieder auf fremden XP-Rechnern auffällt: Der Info-Bereich ist mit allen möglichen Icons zugemüllt. Das liegt daran, das praktisch jedermann da was eintragen will. Steuerung für den Display-Treiber, Interface fürs DVD-Laufwerk, Control für die Wärmeflaschenabfüllung: Alles und jedes Programm will da ein Icon haben.

Warum auch immer.

Das kann man aber steuern, und Icons die nerven ausblenden. Dazu klickt man einfach mit der rechten Maustaste auf den Infobereich (Tray) und wählt den Befehl 'Infobereich anpassen'.

Das öffnet einen Dialog auf dem man für jedes Programm festlegen kann, ob das zugehörige Icon angezeigt werden soll - oder nicht.

Ende der Wärmeflaschenabfüllsteuerung.


Übergabe einer variablen Anzahl an Parameter an eine Methode in C#


Wie in C und C++ kann man auch in C# eine Methode definieren, die eine variable Anzahl an Parametern übergeben bekommt. Eine Methode also, bei der die Anzahl an übergebenen Parametern nicht festgelegt werden muss.

Das geht mit 'parameter arrays'. Ein Parameter-Array ist ein eindimensionales Array, das als letzter Parameter an eine Funktion übergeben wird:

public void foo( int first, double second, params string[] parameters)
{
   // der typ muss natuerlich nicht 'string' sein.
}

So eine Funktion kann man auf zwei Arten aufrufen:

1.) Mit einer Instanz eines Arrays als Parameter.
2.) Mit einer Menge (null oder mehr) zum Typ des Arrays passenden Objekten.

Beispiel zu 2. anhand von foo():

foo( 1, 2, "rot", "gruen", "blau");

Dank an die C# FAQ.




Baustatik Demoversion ausprobieren »