- PR -

admin権限を持ったユーザーでのみ、System.Diagnostics.Process.GetProcessesByNameは有効ですか?

1
投稿者投稿内容
光の天使
会議室デビュー日: 2006/05/11
投稿数: 1
投稿日時: 2006-05-11 11:27
ログインしているセッション内に
どれだけのプロセスが起動されているかを調べる為、
GetProcessesByNameメソッドを使用しておりますが、

admin権限を持たないユーザーでアプリケーションを実行した場合、
メソッド発行時に何のエラーも発生せずにアプリケーションが終了してしまいます。
admin権限を持っていればOKです。

Dim hProcesses As Process()

'WTSEnumerateProcessesでプロセスを列挙
hProcesses = System.Diagnostics.Process.GetProcessesByName(.exeのid)←ここで終了

コンピュータのイベントログには以下の内容が出力されていました。↓

サービス"DNS"(DLL"C\WINNT\System32\dnsperf.dll")のOpenプロシージャに失敗しました。このサービスのパフォーマンスは利用できません。返されたステータスコードは、データDWORD 0です。

アプリケーションを動かすユーザーはadmin権限を持っていないので困っております。
何かよい方法はございませんでしょうか。
ご教授宜しくお願い致します。
かるあ
ぬし
会議室デビュー日: 2003/11/16
投稿数: 1190
お住まい・勤務地: センガワ→ムサシノ
投稿日時: 2006-05-11 11:38
ユーザ権限の偽装を行って
プロセス一覧を取得できる権限を持ったユーザ
の権限で実行してください

偽装に関しては検索するとわさわさ出てきます。
#同じようなスレッドがほぼ同時にたった・・・
1

スキルアップ/キャリアアップ(JOB@IT)