Bootstrapper für Managed DirectX (9.0x) für Visual Studio

31. August 2006 17:36

Im VS 2005 kann man ja den Bootstrapper verwenden, um mit Hilfe von Manifest-Dateien bestimmte Vorabbedingungen im Rahmen eines Setup-Projektes mit zu installieren. Mitgeliefert werden Bootstrapper unter anderem für .Net 2.0, die VC++ Redist-Files und MDAC. Es gibt aber keinen für Managed DirectX. Und auch mit längerer Suche in der Doku habe ich nichts gefunden - selbst Tom wusste nichts dazu zu sagen, und er war bis vor kurzem der PM für MDX.

Chris wusste aber was: Wer also einen Bootstrapper für Managed DirectX sucht, der findet Ihn auf GotDotNet. (Wo ich übrigens auch gesucht hatte, aber die Suche dort ist ein wenig suboptimal... ;-))

 

Der Papst kommt ...

31. August 2006 13:26

... und schon werden wieder die Gullideckel zugeschweist. Was ich nicht verstehe: Warum? Kann mir irgendwer erklären, welchen Zweck das verschweissen der Gullis hat?

AutoRun mit USB Memoy-Sticks

29. August 2006 16:36

Manchmal wäre es nett, wenn man auch mit USB-Sticks Autorun-Möglichkeiten hätte. Wenn also, nachdem der Stick reingesteckt wurde, automatisch eine Anwendung vom Stick gestartet wird. Mit USB Memory-Sticks geht das aber eigentlich nicht - zumindest nicht von Haus aus.

Wenn man aber ein bisschen Software auf dem eigenen Rechner installiert, dann geht das schon. Mit einer Windows.Forms Anwendung könnte das beispielsweise so aussehen: Man macht eine normale Forms-Anwendung, und kümmert sich drum, das die nicht in der Taskleiste angezeigt wird. Das Ding startet man per Autostart. Diese Anwendung muss dann nur noch darauf horchen, ob ein neues Medium in den USB-Slot gesteckt wurde, und kann dann darauf reagieren.

Im Kern sieht das so aus:

public partial class Form1 : Form
{
   public Form1()
   {
      InitializeComponent();
   }

   private const UInt32 WM_DEVICECHANGE = 0x0219;
   private const int DBT_DEVICEARRIVAL = 0x8000;

  protected override void WndProc(ref Message m)
  {
   base.WndProc(ref m);
   this.Location = new Point(-300, -300);

   if (m.Msg == WM_DEVICECHANGE)
   {
      if (m.WParam == (IntPtr )DBT_DEVICEARRIVAL)
      {
         // hier gehts dann los ...
      }
   }
  }
}

Der Dauerkampf mit der Lastfallüberlagerung

28. August 2006 18:32

In der Vorabdokumentation zum Faltwerkprogramm finden sich ja schon eine Menge Hinweise über die Lastfallüberlagerung: Die war auch im großen und ganzen fertig - und sogar etwas schneller, als in den alten Programmen. Das war schön - aber dummerweise stellte sich heraus, das wir auch deutlich mehr damit tun als früher. So kann man beispielsweise im kommenden Programm für jeden Ntels-Punkt einzeln ermitteln, welche Lastfälle im einzelnen mit welchen Wichtungsfaktoren zum endgültigen Ergebnis geführt haben. Das ging früher nicht.

Ohne diese Funktion brauchte die Überlagerung pro Ntels-Punkt (in einem Testbeispiel) etwa 15 ms - das klingt ganz gut. Mit dem "Protokoll", mit dem man die Lastfallinformationen bekam waren es aber leider 600 ms. Das klingt noch immer nicht nach besonders viel Zeit, man darf aber nicht vergessen, das diese Überlagerung irrsinning oft durchgeführt wird. Bei 10 Balken mit je 10 Ntels-Punkten bereits 100 mal. Bei 600 ms bewegen wir uns also etwa im bereich von 10 Sekunden: Das ist eindeutig zu langsam.

Und damit habe ich mich dann fast die ganze letzte Woche vergnügt: Die neue Implementierung (die seit heute abend hoffentlich funktioniert) braucht nun bei gleichen Beispiel nur noch 15 ms - allerdings pro Balken, nicht pro Ntels-Punkt, und einschliesslich des "Protokolls".

Und außerdem: ein paar Optimierungen wäre in der Zukunft noch möglich. Es würde also noch schneller gehen...

Pause bis Sonntag...

25. August 2006 10:10

Und zwar hier.

Probleme mit arabischen Fonts

23. August 2006 16:45

Hin und wieder tritt bei einigen Kunden die unsere Statiksoftware benutzen ein merkwürdiges Problem auf: Das Programm meldet, es sei für eine arabische Version von Windows nicht geeignet - und kann nicht gestartet werden.

Dafür gibt es einen ziemlich obskuren Grund, der mit einer früher mal geplanten arabischen Version zusammenhängt: Die Programm suchen nach Fonts mit dem Text "Arabic" im Namen - finden sie so einen, dann gehen sie davon aus, das sie sich auf einem "arabischen" Windows befinden. Was natürlich Blödsinn ist.

Weil das heute wieder einmal aufgefallen war, bauen wir diesen Test nun endgültig aus: Das Problem sollte also ab der nächsten Version nicht wieder auftreten.

Das Netzwerk der Bauplaner

23. August 2006 13:27

Fand ich interessant: Ein Web-Angebot für "Bauwillige", über das Angebote eingeholt werden können: Honorarangebot.de

Weniger nett: Offenbar wird diese Webseite per Spam-Mail beworben - kann mir zumindest nicht erklären, warum ich sonst gleich zwei Info-Mails von dort erhalten habe.

Unterhaltung fürs Wochenende

18. August 2006 09:19

Diesmal: "Werbespots" für Apple

Nummer 1, 2 und 3.

Goliath: Hochhaus-Sprengung

17. August 2006 14:19

Von Martin Vogel gibts im offenen Forum Bauingenieurswesen eine nette Liste von Links. Die führen alle zu Videos der Sprengung des "Goliath" Hochhauses in Marl.

Ruhige Tage

17. August 2006 14:17

In den letzten paar Tagen war es hier ruhig im Blog: Ich war von Sonntag bis Mittwoch in Oberhausen und habe dort keine Zeit fürs Blog gefunden... :-)

Falls es jemanden interessiert: Zumindest bei innerdeutschen Flügen ( MUC <-> DUS ) gibts weder besondere Sicherheitsüberprüfungen, noch ist das Handgepäck irgendwie eingeschränkt.

Und noch eine Anekdote vom Hinflug: Ich war bereits auf meinem Platz (B54) - da man eine Dame mit einem Boarding-Pass und machte mich darauf aufmerksam, das Sie gern auf ihren Platz wollte. Auf B54. Daraufhin ich: Komisch, da hab ich ja den gleichen - und halte ihr meinen Boarding-Pass hin.

Daraufhin sie: Ja, da steht B54, aber das ist das Gate... ihr Platz is 22F. Steht rechts daneben.

Peinliche Sache.

Neue Updates verfügbar

11. August 2006 13:50

Die Updates betreffen das Stützenprogramm und das Fundamentprogramm. Details wie immer im Update-Protokoll und im Blog meines Bruders.

Unterhaltung fürs Wochenende

11. August 2006 09:52

Diesmal drei Videos:

Da wäre die Frau, die drei Jahre lang jeden Tag ein Photo von sich gemacht hat: Interessant

Dann die Fahrt durch den Strassenbahntunnel: Mit einem Auto

Und die einzigen Cornflakes, die man mit Rum essen kann: Lustig

Die GUID-Schlacht

10. August 2006 12:29

Ich wusste es nicht, aber Peter hat mich grad netterweise darauf hingewiesen: Momentan gibts wohl eine Art Überangebot an GUID-Tools:

Und bei der Gelegenheit noch ein Hinweis auf einen netten Sammeldienst für .NET Blogger den ich auch nicht kannte: dotnetheute.com

Neue Guid ins Clipboard mit einem VS Addin

9. August 2006 17:30

Vor langer, langer Zeit - als wir noch "M", den Microsoft Editor unter MS-DOS benutzten, haben wir relativ viele Erweiterungen für den Editor selbst programmiert. Im Zuge der Zeit wurden die IDEs aber immer besser - seit wir Visual Studio benutzen habe ich ganz sicher keine einzige Erweiterung - abgesehen von Makros - tatsächlich selbst programmiert.

Heute ging mir aber etwas massiv gegen den Strich. Das beim VS mitgelieferte Tool zum erzeugen von GUIDs kann das zwar in 4 Formaten - aber die sind alle eigentlich für C++ gedacht. Wenn man die damit erzeugten Strings in C# verwenden will, muss man ständig Teile davon manuell entfernen. Also musste ein eigenes "Tool" her, das sich in VS integrieren lässt, und den Guid String in "richtigen" Format ins Clipboard kopiert.

Das stellte sich als extrem einfach heraus. Folgendes ist zu tun:

  • Man legt ein neues Projekt vom Typ "Visual Studio Add-in" an; dabei hilft ein Wizard.
  • Im resultierenden Code muss man im File "connect.cs" in der Methode "Exec" die gewünschte Funktion implementieren. Im meinem Fall war das die ungeheuer komplexe Zeile:
    Clipboard.SetDataObject( Guid.NewGuid().ToString("B"));
  • Dann übersetzt man das ganze.
  • Nun öffnen man das File [ProjektName].AddIn und trägt unter "Assembly" den komplette Pfad zur gerade übersetzten Assembly ein.
  • Schliesslich kopiert man das .AddIn File noch in den passenden Ordner unter "Document und Settings" (siehe VS-Dokumentation) und startet VS neu: Fertig - das AddIn erscheint nun mit einem Smiley-Icon im Tools-Menü.

eBay Anzeigen bei Google

9. August 2006 14:28

Google-Anzeigen gibts im ganzen Web: Darin schalten dann Drittfirmen "kontextbezogene" Anzeigen. Nun gibt es einige Firmen, so zum Beispiel eBay und verschiedene Preisvergleicher offenbar ganz pauschal für praktisch alle Begriffe Werbung. Frei nach dem Motto: Alles was es gibt, gibts auch bei eBay.

Das führt dann zu so schönen Beispielen wie dem hier: Offenbar kann man bei Google auch "De" kaufen, und Preisvergleich.de schafft es sogar, Preise von unterschiedlichen Händlern für "De" zu vergleichen. Tolle Sache, so kontextbezogene Werbung.

google_werbung.png

Die Suche nach Cracks

9. August 2006 10:58

Jedesmal wenn man in einem Search-Engine etwas sucht und dann auf das Suchergebnis klickt, dann erhält die Seite die angesteuert wird eine Information. Diese Information sagt aus, was denn zuvor gesucht wurde. Mit anderen Worten: Jedesmal, wenn jemand per Google auf mein Blog kommt, dann können die gesuchten Worte mitprotokolliert werden. Und das tue ich auch.

Und alle paar Wochen schaue ich mir dieses Protokoll auch an: Es ist teilweise ganz unterhaltend, was da so gesucht wird. Unter anderen scheint es ein großes Interesse an Cracks zu Statikprogrammen zu geben. Für alle die nicht wissen was das ist: Da will halt jemand eine Schwarzkopie der Software benutzen.

Weil nun so oft nach "kostenlosen" Statikprogrammen gesucht wird, wollte ich mal wieder darauf hinweisen: Unsere "Studentenversion" ist völlig kostenlos hier zu haben. Die Studentenversion ist in keiner Weise eingeschränkt, braucht auch keinen Dongle und unterscheidet sich nur in einer einzigen Sache von der kommerziellen Version: Sie ist eben umsonst. Es gibt wirklich keinen Grund, einen Crack dafür zu suchen. :-)

Und weil auch danach gesucht wurde: Virtual PC von Microsoft braucht auch keinen Crack, denn auch dieses Programm ist kostenlos zu haben. Ebenso wie der Virtual Server.

Deutscher Stahlbautag in Dresden

9. August 2006 10:25

Stahlbau - Tradition und Moderne: Am 12. und 13. Oktober. Mehr beim BauBlog und in der Einladungsbroschüre vom deutschen Stahlbauverband.

Month of the Browser Bug ist vorbei

7. August 2006 17:45

H.D.Moore betrieb im Juli den "Month of the Browser Bug", in dem er jeden Tag eine Sicherheitslücke in einem Browser nannte, und per Demo-Seite verdeutlichte. Die meisten Fehler fand er im IE6, aber auch Apple, Konqueror und Firefox waren betroffen.

Heute bin ich endlich mal dazu gekommen, alle Demos mit der bei mir installierten Version des IE (IE7, Beta 3) auszuprobieren - und es trat keines ( 0 ) der von Moore genannten Probleme auf. Bei der Gelegenheit habe ich dann auch gleich noch den "Browsercheck" von Heise durchprobiert: Auch von den dort vorliegenden Demos hat kein einziges geklappt.

Ich denke nicht das das für alle Zeiten so bleiben wird -über lang oder kurz werden auch Löcher im IE7 auftauchen. Momentan sieht es aber tendenziell so aus, das sich beim IE7 in Sachen Sicherheit tatsächlich viel getan hat.  Wer ihn nicht hat: IE7 Beta 3 läuft nach meinem Ermessen stabil genug um täglich eingesetzt zu werden (was ich auch tue) - und ist hier zu haben.

Merkwürdige Angebote im Internet

7. August 2006 16:53

Manche Dinge verstehe ich einfach nicht- und das ist eines davon. Unter dss-gilde.notrix.de bietet jemand die Startseite unserer Webseite für die Statikprogramme an. Zusätzlich ist oben drüber noch ein bisschen Google-Reklame geklebt. Ich kann mir beim besten Willen nicht vorstellen was das soll - Geld kann man da sicherlich keins mit verdienen.

Wieso macht jemand sowas? Bin für jeden Hinweis dankbar.

Alles Gute zum Geburtstag, WWW

6. August 2006 09:00

Das Web wird heute 15. Am 6. August 1991 hat Tim Berners-Lee seine Idee des "World Wide Web" vorgestellt. Alles Gute :-)   

Kalender

<<  August 2014  >>
MoDiMiDoFrSaSo
28293031123
45678910
11121314151617
18192021222324
25262728293031
1234567

View posts in large calendar