NiosII EDSをUAC環境下で使う

AlteraのソフトコアNiosIIの開発にはEclipseベースのNiosIIが必要ですが、10.1の時点ではUAC環境に対応していません(11.0は未確認)。しかし、Visual StudioのExpress版があれば、UAC環境下でも動作させることができます。

マニフェストの用意

まず、以下の内容でテキストファイルを作成します。名前はnios2-hack.manifestとでもしましょうか。保存場所はAdministratorで見える場所ならどこでもいいです。今回は、%QUARTUS_ROOTDIR%\..\nios2eds\sdk2\binに保存します。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="Nios2 EDS Support Tool" type="win32"/>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="asInvoker"/> 
      </requestedPrivileges>
    </security>
  </trustInfo>
</assembly>

マニフェストの埋め込み

次に、Visual Studio コマンドプロンプトを管理者として実行し、以下のコマンドを実行します。

> cd %QUARTUS_ROOTDIR%\..\nios2eds\sdk2\bin
> for %f in (nios2-*-update-*.exe) do mt -manifest nios2-hack.manifest -outputresource:%f

確認

一般ユーザでnios2-app-update-makefile.exeを実行してUACダイアログが出現しなければ成功です。
これで、UAC環境でもNiosII EDSを使えるようになります。