Windows XPから、OpenSCManager()にWindows Vistaのマシン名を指定し、OpenService()等でサービスの状態を取得しようとしましたが、
OpenService()でアクセス拒否のエラーが発生してしまいます。
このようになる原因、および、回避方法について教えてください。
ユーザは、Administratorsグループに所属しているユーザです。
同じユーザ名はWindows XP、Windows Vista共に登録しています。
#パスワードも同じ。
<補足>
・Administratorユーザで実行した場合は、正常に動作します。
・同じプログラムをWindows XP同士で実行しても正常に動作します。
おそらく、Windows VistaのAdministratorの権限の関係だと
思いますが・・・
#manifestファイル等で回避できるものなのでしょうか?
試しにコントロールパネルからUAC(だったかな?)をOFFにしてみて
それで動いたら権限の問題かもですね
だとしたらおっしゃるようにマニフェストを用意することで解決できるかもしれません
回答ありがとうございます。
コントロールパネルからUACをOFFにしたところ、正常に動作しました。
試しに、Windows XP側のプログラムと同じ場所にマニフェストファイル
を配置しましたが、うまくいきませんでした。
どのようにしたらうまくいくのでしょうか?
もしご存知であればご教授願います。