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

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

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

Re[4]: VS2008(VB) Vistaでビルド失敗


(過去ログ 70 を表示中)

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

■40577 / inTopicNo.1)  VS2008(VB) Vistaでビルド失敗
  
□投稿者/ ata (3回)-(2009/08/28(Fri) 15:27:52)

分類:[.NET 全般] 

OS:Vista
言語:VB.NET
開発環境:VS2008


いつもお世話になっております。

今回も非常に初歩的なところで詰まってしまいました。

タイトル通りなのですが、
ビルド実行時のエラーがどうも府に落ちません。

以下エラー文抜粋します。

アセンブリ "D:\src\App\TEST\bin\Release\TEST.dll"
を登録できません。 - アクセスが拒否されました。
管理者としてアプリケーションを実行しているか確認してください。
レジストリキー
'HIKEY_CLASSES_ROOT\TEST.clsTEST01'へのアクセスが拒否されました。

ログインユーザーはadmin権限を持っています。
これは管理者とは意味が違うのでしょうか?

どうかお力をお貸し下さい。


引用返信 編集キー/
■40579 / inTopicNo.2)  Re[1]: VS2008(VB) Vistaでビルド失敗
□投稿者/ 774RR (385回)-(2009/08/28(Fri) 15:37:15)
> ログインユーザーはadmin権限を持っています。
> これは管理者とは意味が違うのでしょうか?
違う。
Visual Studio 起動時に警告画面が出なかったかい?

Vista の場合、[スタート]→うんぬん、で選んで、左クリックで起動する、と
ユーザーに管理者権限があっても、実際のプログラムは管理者権限なしで動く。
最後を「右クリック→(盾アイコン)管理者として実行」としなきゃならない。
引用返信 編集キー/
■40587 / inTopicNo.3)  Re[2]: VS2008(VB) Vistaでビルド失敗
□投稿者/ ata (4回)-(2009/08/28(Fri) 16:46:23)
No40579 (774RR さん) に返信

> Visual Studio 起動時に警告画面が出なかったかい?

ソリューションから起動しましたが、
確認ダイアログも何も表示されませんでした…。


> 最後を「右クリック→(盾アイコン)管理者として実行」としなきゃならない。

なるほど…そうだったんですね。
セキュリティ強化のためでしょうか?

しかし、今まで何も起きなかったのは何故でしょう?
(しかも他のプロジェクトはビルドできていました)

やはり府に落ちません。
管理者で起動せずともビルドできるプロジェクトと
何が違うのでしょうか???





引用返信 編集キー/
■40598 / inTopicNo.4)  Re[3]: VS2008(VB) Vistaでビルド失敗
□投稿者/ mic (1回)-(2009/08/28(Fri) 23:42:17)
No40587 (ata さん) に返信
Vistaからセキュリティとして加えられたUAC(ユーザーアカウントコントロール)が影響してます。
これはOSのセキュリティとして動いて、OS内で動くアプリケーションの行動やシステムファイル、レジストリへのアクセスなどの規制を行っています。
今回のエラーはそのセキュリティに引っかかったと考えていいと思うので、
プロジェクト→〜〜〜のプロパティからアプリケーションタグの「UAC 設定の表示」を開いて
<requestedExecutionLevel level="asInvoker" uiAccess="false" />
の箇所を
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
に変更してください。
そうすると、ビルドするときにVS自体を管理者として実行しなおして管理者権限を持って実行することができます。

この詳しい流れはMSDNにも書いてありますが、管理者権限は継承されていきますので管理者として起動しているアプリケーションがshellなどでメモ帳を立ち上げると
そのメモ帳は管理者権限を持ちます。
逆に権限を持っていないものがマニフェストレベルで管理者権限を持っているのものを立ち上げようとしてもエラーを起こすか何も起きません。
引用返信 編集キー/
■40599 / inTopicNo.5)  Re[4]: VS2008(VB) Vistaでビルド失敗
□投稿者/ Azulean (435回)-(2009/08/29(Sat) 08:15:23)
意識せずに、プロジェクトのプロパティのコンパイルタブの下の方にある COM 相互運用機能の登録 にチェックが入っているのではないでしょうか。
これはコンパイルしたものを COM としてレジストリに登録しますので、管理者権限が必要になります。
引用返信 編集キー/


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

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -