C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

ユーザー環境変数のPathに一時的にパスを追加したい

[トピック内 6 記事 (1 - 6 表示)]  << 0 >>

■84907 / inTopicNo.1)  ユーザー環境変数のPathに一時的にパスを追加したい
  
□投稿者/ ゆきの (1回)-(2017/08/21(Mon) 16:12:36)

分類:[VB.NET/VB2005 以降] 

こんにちは。
VB2013で開発しているWindowsフォームアプリで、
例えば、ユーザー環境変数のPathに対して
ソフト起動時、任意の値(例:C:\aaa\bbb)を追加し、
ソフト終了時、この値を削除する、ということをやりたいのですが、
どのようにやればいいのでしょうか?
引用返信 編集キー/
■84908 / inTopicNo.2)  Re[1]: ユーザー環境変数のPathに一時的にパスを追加したい
□投稿者/ kaina (30回)-(2017/08/21(Mon) 16:59:46)
ほい

https://msdn.microsoft.com/ja-jp/library/96xafkes(v=vs.110).aspx

引用返信 編集キー/
■84909 / inTopicNo.3)  Re[2]: ユーザー環境変数のPathに一時的にパスを追加したい
□投稿者/ ゆきの (2回)-(2017/08/21(Mon) 17:14:40)
No84908 (kaina さん) に返信
> ほい
>
> https://msdn.microsoft.com/ja-jp/library/96xafkes(v=vs.110).aspx
>

ありがとうございます。
これを見ると、自動的に任意パスを追加できるようなメソッドが用意されているわけではなく、
追加時は現在のPath登録情報に追加するパス情報を加えた文字列をEnvironment.SetEnvironmentVariableして、
削除時は現在のPath登録情報から対象のパス情報を削除した文字列をEnvironment.SetEnvironmentVariableする、
という方法になるでしょうか?
(現在のPath登録情報はEnvironment.GetEnvironmentVariable("Path", EnvironmentVariableTarget.User)で取得)


引用返信 編集キー/
■84910 / inTopicNo.4)  Re[3]: ユーザー環境変数のPathに一時的にパスを追加したい
□投稿者/ kaina (31回)-(2017/08/21(Mon) 18:02:17)
No84909 (ゆきの さん) に返信
> ■No84908 (kaina さん) に返信
>>ほい
>>
>>https://msdn.microsoft.com/ja-jp/library/96xafkes(v=vs.110).aspx
>>
>
> ありがとうございます。
> これを見ると、自動的に任意パスを追加できるようなメソッドが用意されているわけではなく、
> 追加時は現在のPath登録情報に追加するパス情報を加えた文字列をEnvironment.SetEnvironmentVariableして、
> 削除時は現在のPath登録情報から対象のパス情報を削除した文字列をEnvironment.SetEnvironmentVariableする、
> という方法になるでしょうか?
> (現在のPath登録情報はEnvironment.GetEnvironmentVariable("Path", EnvironmentVariableTarget.User)で取得)
>

そうですね、ご自分で試してみましょう。
引用返信 編集キー/
■84912 / inTopicNo.5)  Re[4]: ユーザー環境変数のPathに一時的にパスを追加したい
□投稿者/ ゆきの (3回)-(2017/08/22(Tue) 16:58:03)
早速試してみました。

現在のPath登録情報に追加するパス情報を加えた文字列をEnvironment.SetEnvironmentVariableする方法で、
ユーザー環境変数が追加されていることを、コントロールパネル上で確認しました。

ただし、これを行ったWindowsフォームアプリから呼び出したプロセス(別アプリ)では、
追加したPath情報を認識できませんでした。
なお、Windowsフォームアプリを再起動することにより、
このアプリより呼び出されるプロセスで、追加したPath情報を認識しました。
このアプリの再起動なしに、このアプリから呼び出されるプロセスで
即座にPath情報を認識する方法はないでしょうか?

引用返信 編集キー/
■84913 / inTopicNo.6)  Re[5]: ユーザー環境変数のPathに一時的にパスを追加したい
□投稿者/ ゆきの (4回)-(2017/08/22(Tue) 17:10:03)
色々調べたら、子プロセス用の環境変数設定方法がありました。

http://smdn.jp/programming/netfx/environment_variables/
(「子プロセスの環境変数」を参照しました)

これで一件落着です。
解決済み
引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ