2

C# を使用して TFS API でチェックイン、チェックアウト、GetLatest などを試みています。開発用 PC と管理者ユーザーの場合、これは問題なく機能します。ただし、VS 2010 がインストールされておらず、TFS ユーザーが非管理者である専用マシンでは、これは機能しません。次のエラーが表示されます: *

レジストリ キー 'HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0' へのアクセスが拒否されました。2012-10-08 14:58:30 [...] エラー: Microsoft.Win32.RegistryKey.Win32Error(Int32 errorCode、文字列 str)
で Microsoft.Win32.RegistryKey.CreateSubKey (文字列サブキー、RegistryKeyPermissionCheck 権限チェック、RegistrySecurity registrySecurity) Microsoft.TeamFoundation.Client.UIHost.get_UserRegistryRoot() で Microsoft.TeamFoundation.VersionControl.Client.Workstation.get_GetLatestOnCheckout() で

*

これは管理者権限と関係があるのでしょうか? TFS の「ユーザー」は、実際にはそのアカウントで実行されている Web サイトであるため、管理者である必要はありません。

同じマシンで自分の資格情報を使用してテスト コンソール アプリを実行してみましたが、動作します。したがって、これは資格情報です。

誰でも助けることができますか?Web サイトのユーザー アカウントを管理者にするだけで十分ですか?

そして: ローカル ワークスペースを作成するときにレジストリにアクセスしたいものは何ですか?

4

1 に答える 1

2

アプリケーション プール ID で Web サイトを実行しているが、アプリケーション プール ID がユーザー プロファイルを読み込まないように設定されている (したがって、HKCU レジストリ アクセスがない) 場合に、この種のエラーが発生します。

IIS の詳細設定で、"Load User Profile"=True を設定します。

http://geekswithblogs.net/ProjectLawson/archive/2009/05/05/iis-system.web.aspnethostingpermission-exception-on-windows-7-rc.aspxを参照してください。

.. 詳細については。

于 2012-10-08T22:35:46.547 に答える