Windows
C#: Kombination aus Forms- und Konsolenanwendung
Um Forms- und Konsolenanwendung in einer einzigen Assembly zu kombinieren, gibt es (mindestens) zwei Möglichkeiten. Keine davon ist zu 100% perfekt.
Möglichkeit 1
Hier muss die Assembly als Windows Forms Anwendung konfiguriert sein.
Code-Beispiel:
using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace MyProject
{
static class Program
{
[DllImport("kernel32.dll")]
static extern bool FreeConsole();
[STAThread]
static void Main(string[] args)
{
if (args.Length == 0)
{
FreeConsole();
StartUI();
}
else
{
for(int i = 0; i < args.Length;i++)
{
// do something...
}
}
}
private static void StartUI()
{
Windows XP konfigurieren
Windows Media Player aus dem Kontextmenü entfernen
Um den Windows Media Player aus dem Kontextmenü des Explorers zu entfernen, gibt es zwei Möglichkeiten.
Der einfache Weg:
- auf Start klicken
- auf Ausführen klicken
regsvr32 /u wmpshell.dlleingeben- Ok anklicken
Um das ganze rückgängig zu machen, einfach regsvr32 wmpshell.dll ausführen.
Der etwas weniger einfache Weg:
Wake-on-Lan mit Windows
WoL-Clients zum Aufwecken
Als ideal hat sich wol.exe von Gammadyne herausgestellt. Ein Windows-Shortcut mit dem Ziel
"C:\Program Files\WakeOnLan\wol.exe" 001b2107c8a9
sendet ein MagicPacket an die MAC-Adresse 00:1b:21:07:c8:a9. wol.exe sendet das Paket in einem Ethernet-Frame. Andere Tools, die dazu ein UDP-Paket verwenden, haben sich in meinem Fall als untauglich herausgestellt.
Hier gehts zum HowTo für Linux.
