Geralds Thought Shed

Gedanken zu .Net, C#, Java, Windows, Linux und mehr….

Archiv für Januar, 2008

p/invoke Add-in für Visual Studio

Verfasst von Gerald Huber am Montag, 28. Januar 2008

Am Anfang dieses Monats habe ich über Win 32-Api-Calls in C#-Anwendungen geschrieben. Ich beschrieb wie ich diese Funktionen mittels DllImport usw. aufrufen und benutzen kann.

Die Schwiereigkeit dabei ist, die geeigneten Datentypen oder überhaupt die richtige DLL-Datei zu finden. Hier schafft die Seite http://pinvoke.net/ Abhilfe.

Die Seite selbst beschreibt sich: “A wiki for .NET developers: PInvoke.net is primarily a wiki, allowing developers to find, edit and add PInvoke signatures, user-defined types, and any other information related to calling Win32 and other unmanaged APIs from managed code (written in languages such as C# or VB.NET).”

Das ist schonmal gut. Aber besser ist noch, dass die Community um PInvoke ein Add-in für Visual Studio bereitstellt um direkt auf den Inhalt von Pinvoke zuzugreifen:  Download the PInvoke.net Add-in for FREE now.

Einfacher geht es nur, wenn wir Win32-Api-Calls nie mehr benutzen müssten… ;-)

Veröffentlicht in .NET, Visual Studio | Getaggt: , | Keine Kommentare »

Virtual machines….

Verfasst von Gerald Huber am Freitag, 25. Januar 2008

Ich denke ich muss keinem darüber erzählen, was virtual machines sind und wofür man sie benötigt.

Ich denke jedem ist klar, dass es unter gewissen Umständen immer sehr hilfreich ist, wenn man z.B. noch in einem Vista OS Windows XP starten kann, um auf XP eventuell die neue eben entwickelte Website/Anwendung zu testen. Auch kann ein Linux in er VM, wie sie of kurz genannt werden helfen.

Neben dem MS Virtual PC/Server gibt es unteranderem auch den VMware Player oder den VMware Server. Alle drei Produkte sind frei erhältlich und kostenlos. Haben aber ihre Einschränkungen.

In meinem vorliegenden Fall sollte der VMware Player zum einsatz kommen. Dieser erlaubt mir aber nicht, eigene VM zu erstellen…..
Aber es gibt Abhilfe…. unter folgenden Link: VMware Utilities kann man sich sehr hilfreiche Utilities für die eigene Erstellung einer VM (den VMX Builder) herunterladen.
Zudem werden Tools wie das VMware DiskMount GUI, das Disk Manipulation Utility einem Anwender einer VM basierend auf dem VMware Player bald nüztliche Helfer sein….

Super Sache….!

Veröffentlicht in Linux, Vista, Win XP | Getaggt: , , | Keine Kommentare »

Workshop-Reihe: “Karriere: Erfolgreicher Entwickler?”

Verfasst von Gerald Huber am Montag, 14. Januar 2008

Morgen beginnt bei uns an der Uni wieder eine Workshop-Reihe über .NET.

Diesmal bieten wir aber darüberhinaus noch zwei Workshops eher anderer Natur an: 1. Ein Workshop zu PowerPoint 2007 und 2. einen Präsentationsworkshop.

Hiermal die Beschreibung:

ErfolgreichEntwickeln! –ErfolgreichPräsentieren!

WillstduErfolgreichsein? –DannsolltestduzuunsereWorkshops und Vorträgenbesuchen. MitSpass, lernstdunebenTechnologie-Know-Howallesum deineKundenzuüberzeugen!

  • .NET 3.5 –EineEinführung-Vortragvon Marc Kirchhoff
    Dienstag, 15.01.08 -14:30-16:00 Uhr-RaumWA 0610.
  • C# -EinWorkshop in zweiTeilen-1.Teil –Workshop von Gerald Huber
    Mittwoch, 16.01.2008 -14-16+ Uhr-CIP-Pool WA
  • ASP .NET –Dynamisch? –Ja, bitte!–Vortragvon Marc Kirchhoff
    Dienstag, 22.01.08 -14:30-16:00 Uhr-RaumWA 0610
  • PowerPoint 2007 -Folien–Workshop von Jan Rüdiger
    Mittwoch, 23.01.08 -14-16:00 Uhr-CIP-Pool WA
  • ErfolgreichPräsentieren–Ausdrucksstarküberzeugen–Workshop von Gerald Huber
    Dienstag, 29.01.08 -14:30-16:00 Uhr-RaumWA 0610
    Achtung! Max 15 Personen!! –Bitte per Mail anmelden!
  • C# -EinWorkshop in zweiTeilen-2.Teil –Workshop von Gerald Huber
    Mittwoch, 30.01.2008 -14-16+ Uhr-CIP-Pool WA
  • Objekt, bitte! –MitC# einfachobjektorientiertProgrammieren-Workshop v. Jan Rüdiger
    Donnerstag, 06.02.08 -14:00-16:00 Uhr-CIP-Pool WA

Also alle sind herzlich eingeladen…..!

Bis dann Euer Gerald

Veröffentlicht in .NET, MSP, Office 2007 | Getaggt: , , , | Keine Kommentare »

C# - Win32 API calls in C# ?!?!

Verfasst von Gerald Huber am Montag, 7. Januar 2008

Wieder einmal eine Frage, die sich der ein oder andere sicherlich schon mal gestellt hat, was ist, wenn der Befehl/die Funktion die ich brauche nicht in der .NET-Library enthalten ist? - Klar, momentan gibt es (so gut wie .NET 3.5) aber es ist immer noch nicht alles von Windows “gewrappt” worden.

Kann man also unter (innerhalb) von C# Win32-Api-Methoden aufrufen? - JA.

Und zwar so:

  1. Wir machen unsere Funktion ausfindig. Z.B. die Methode den um die Workstation, also unsere aktuelle Windows-Sitzung zu sperren.
  2. Die MSDN-Library sagt hierzu, dass wir die Methode LockWorkStation aus der user32.dll-Datei brauchen.
  3. Nun schreiben wir in unsere C#-Klasse folgende Zeilen:
    [DllImport("user32.dll", SetLastError = true)]
    public static extern bool LockWorkStation();

    Hierbei Importieren wir die “user32.dll” mittels “DllImport” und müssen natürlich die Methode als “extern” definieren, da sie ja aus dieser DLL-Datei importiert wird.
    “SetLastError=true” sagt nur, dass wir eine Fehlermeldung der Importierten Methode auslesen könnten.Anmerkung: Hätten wir zu dem DllImport-Attribute noch ” EntryPoint=”LockWorkStation” ” geschrieben hätten wir unsere Methode anders benennen können, also z.B. wie folgt:
    [DllImport("user32.dll", EntryPoint="LockWorkStation", SetLastError = true)]
    public static extern bool Lock();
  4. Das ist auch schon alles.
     

Viel Spass!

Veröffentlicht in .NET | Getaggt: , , , | 1 Kommentar »

C# - Bitmap (jpg, png) als Icon für das NotifyIcon-Element

Verfasst von Gerald Huber am Samstag, 5. Januar 2008

Ich wurde gestern wieder einmal gefragt, wie man ein NotifyIcon-Element bei .NET ein Bitmap-Image als Icon übergeben kann.

Eigentlich ist es ganz einfach, wenn man es weiß ;-)

// Here is our notifyIcon
NotifyIcon myNotifyIcon;
this.myNotifyIcon = new NotifyIcon(this.components);

// now we convert the Bitmap image in an icon
Icon icon = Icon.FromHandle(((Bitmap)Image.FromFile(”Resources/Settings.png”)).GetHicon());
this.myNotifyIcon.Icon = icon;

Veröffentlicht in .NET | Getaggt: , , , | 1 Kommentar »

Frohes Neues Jahr 2008!

Verfasst von Gerald Huber am Donnerstag, 3. Januar 2008

Hallo!

 So Weihnachten ist gut verbracht, alles wurde brav aufgegessen und massig Geschenke gab es auch.

Geböllert wurde dann ordentlich an Silvester und auch ein kleines Glas Sket getrunken!

Insgesamt nette Tage im Kreis der Familie und der Lieben.

Allen wünsche ich auch ein

Frohe Neues Jahr 2008!

Euer Gerald

Veröffentlicht in Mein Leben, die Scheiße und ich... | Keine Kommentare »