方法 : My 名前空間を使用する (C# プログラミング ガイド)
更新 : 2007 年 11 月
Microsoft.VisualBasic.MyServices 名前空間 (Visual Basic では My) を使用すると、いくつもの .NET Framework クラスに簡単かつ直感的にアクセスできるため、コンピュータ、アプリケーション、設定、リソースなどと対話するコードを記述できます。MyServices 名前空間は、もともとは Visual Basic で使用するものとして設計されましたが、C# アプリケーションでも使用できます。
Visual Basic で MyServices 名前空間を使用する方法の詳細については、「My による開発」を参照してください。
参照の追加
MyServices クラスをソリューションで使用する前に、Visual Basic ライブラリへの参照を追加する必要があります。
Visual Basic ライブラリへの参照を追加するには
ソリューション エクスプローラで、[参照設定] ノードを右クリックし、[参照の追加] をクリックします。
[参照の追加] ダイアログ ボックスが表示されたら、一覧を下にスクロールし、Microsoft.VisualBasic.dll を選択します。
プログラムの先頭の using セクションに次の行を追加することもできます。
using Microsoft.VisualBasic.Devices;
使用例
次の例では、MyServices 名前空間に含まれているさまざまな静的メソッドを呼び出します。このコードをコンパイルするには、Microsoft.VisualBasic.DLL への参照をプロジェクトに追加する必要があります。
using System;
using Microsoft.VisualBasic.Devices;
class TestMyServices
{
static void Main()
{
// Play a sound with the Audio class:
Audio myAudio = new Audio();
Console.WriteLine("Playing sound...");
myAudio.Play(@"c:\WINDOWS\Media\chimes.wav");
// Display time information with the Clock class:
Clock myClock = new Clock();
Console.Write("Current day of the week: ");
Console.WriteLine(myClock.LocalTime.DayOfWeek);
Console.Write("Current date and time: ");
Console.WriteLine(myClock.LocalTime);
// Display machine information with the Computer class:
Computer myComputer = new Computer();
Console.WriteLine("Computer name: " + myComputer.Name);
if (myComputer.Network.IsAvailable)
{
Console.WriteLine("Computer is connected to network.");
}
else
{
Console.WriteLine("Computer is not connected to network.");
}
}
}
MyServices 名前空間のクラスの中には C# アプリケーションから呼び出すことができないクラスもあります。たとえば、FileSystemProxy クラスは、C# と互換性がありません。そのような場合は、同様に VisualBasic.dll に含まれている FileSystem を構成する静的メソッドを代わりに使用できます。このようなメソッドを使用してディレクトリを複製する方法を次に示します。
// Duplicate a directory
Microsoft.VisualBasic.FileIO.FileSystem.CopyDirectory(
@"C:\original_directory",
@"C:\copy_of_original_directory");