プログラムファイルでRGSVR32を実行する myAppは、管理者として実行しても失敗したようです

StackOverflow https://stackoverflow.com/questions/3884824

  •  28-09-2019
  •  | 
  •  

質問

当社のソフトウェアは、実行時にOCXを登録できる必要があります。 OCXは、アプリのプログラムファイルディレクトリに存在します。管理者としてCMDラインを手動で起動し、コマンドを実行すると、すべてがうまく機能することがわかりますが、Adminとしてアプリを起動し、アプリにOCXを登録しようとすると失敗します。また、ビルドディレクトリから実行すると、おそらくビルドディレクトリを所有しているため、アプリがregsvr32を正常に実行できることにも気付きます。私はまだ管理者として実行する必要があります。何がうまくいかないのか誰かが何かアイデアを持っていますか?

ありがとう、ブライアン

役に立ちましたか?

解決

答えは、第一に、私はずさんなことであり、第二に、コマンドラインのargsがregsvr32に渡されたことは、二重引用符で包む必要があることです。私がそうするようなコードを書いたので、それは私には決して起こりませんでした:

string args = "/s " + Path.Combine(MP_xxxx_DIR.FullName, MAP_POINT_OCX) ;

それが次のように見えるはずだったとき:

string args = "/s " + "\"" + Path.Combine(MP_xxxx_DIR.FullName, MAP_POINT_OCX) + "\"";

これが他の誰かを助けることを願っています:)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top