差分
ナビゲーションに移動
検索に移動
ページの作成:「macOSでプロセス監視のシステムを作ろうと思ったわけだ。 == 実装1 == 実行中のプロセス一覧はNSWorkspace.SharedWorkspace.RunningApplicati...」
macOSでプロセス監視のシステムを作ろうと思ったわけだ。
== 実装1 ==
実行中のプロセス一覧はNSWorkspace.SharedWorkspace.RunningApplicationsプロパティで簡単に取得できた。
<source lang="csharp">
using System;
using System.Collections.Generic;
using System.Linq;
using Foundation;
using AppKit;
namespace ProcessList
{
static class MainClass
{
static void Main(string[] args)
{
NSApplication.Init();
// ウインドウ不要なのでメッセージポンプは止める
//NSApplication.Main(args);
foreach (var app in NSWorkspace.SharedWorkspace.RunningApplications)
{
Console.WriteLine(app.BundleUrl);
}
}
}
}
</source>
== 実装2 ==
もっと低レベルに取得する場合はGetBSDProcessList()を使うそうだ。
== 関連項目 ==
* [[MacOS/通知センターの有効無効を切り替える]]
* [[Xamarin.Mac/実行中のプロセスを終了させる]]
* [[Xamarin.Mac/システムステータスバーにアイコンを表示する]]
* [[Xamarin.Mac/Dockアイコンを非表示にする]]
* [[MonoMac/外部コマンドを実行する]]
* [[Xamarin.Mac/AppleScriptを実行する]]
== 参考文献 ==
{{reflist}}
{{stub}}
== 実装1 ==
実行中のプロセス一覧はNSWorkspace.SharedWorkspace.RunningApplicationsプロパティで簡単に取得できた。
<source lang="csharp">
using System;
using System.Collections.Generic;
using System.Linq;
using Foundation;
using AppKit;
namespace ProcessList
{
static class MainClass
{
static void Main(string[] args)
{
NSApplication.Init();
// ウインドウ不要なのでメッセージポンプは止める
//NSApplication.Main(args);
foreach (var app in NSWorkspace.SharedWorkspace.RunningApplications)
{
Console.WriteLine(app.BundleUrl);
}
}
}
}
</source>
== 実装2 ==
もっと低レベルに取得する場合はGetBSDProcessList()を使うそうだ。
== 関連項目 ==
* [[MacOS/通知センターの有効無効を切り替える]]
* [[Xamarin.Mac/実行中のプロセスを終了させる]]
* [[Xamarin.Mac/システムステータスバーにアイコンを表示する]]
* [[Xamarin.Mac/Dockアイコンを非表示にする]]
* [[MonoMac/外部コマンドを実行する]]
* [[Xamarin.Mac/AppleScriptを実行する]]
== 参考文献 ==
{{reflist}}
{{stub}}