none
Visual Studio 2008 SP1でC++/CLIのプロジェクトに.NET Framework 3.5 Client Profileを指定する方法はあるでしょうか RRS feed

  • 質問

  • こんにちは。

    前任者から引き継いで、Windows7 64ビットの環境でVisual Studio 2008 SP1で.NET Framework 3.5を使用したC#のEXE/DLL、C++/CLIのDLLを開発しています。

    配布の関係から、.NET FrameworkのターゲットにClient Profileを指定したいと考えています。

    色々とドキュメントを調べたところ、C#のプロジェクトについてはIDEから指定できることが分かりましたが、C++/CLIのプロジェクトにClient Profileを指定する方法がわかりません。

    C++/CLIのプロジェクトファイル(.vcproj)をテキストエディタで開いたところ、

    <?xml version="1.0" encoding="Windows-1252"?>
    <VisualStudioProject
    ProjectType="Visual C++"
    Version="9.00"
    Name="xxxxxx" (←名前を伏せています)
    ProjectGUID="{5A82D960-6F08-4C57-9EB3-1B0AD6A295B3}"
    RootNamespace="xxxxxx" (←名前を伏せています)
    Keyword="ManagedCProj"
    TargetFrameworkVersion="196613"
    >

    (以下略)

    という記述になっており、TargetFrameworkVersion="196613"の属性が.NET Framework 3.5の指定だと思うのですが、MSDNのドキュメントなどを調べても目的の方法については見つけられませんでした。

    C++/CLIの.vcprojプロジェクトファイルで.NET Framework 3.5 Client Profileを指定する方法をご存知のかたは居らっしゃらないでしょうか。

    あるいは、指定できないということならそれはそれで客先に説明もつくのでそういった情報でも構いません。

    ご存じの方がいらっしゃいましたら、ご教示ください。

    よろしくお願いします。

    2013年2月1日 2:42

回答

  • app.configに sku="client" を含めるだけですが。

    ところで、.NET Framework 3.5 Client Profileが適用可能な環境はあまり広くありませんが、ご存知でしょうか? またC++/CLIでは.NET Frameworkの他にVC++ Runtimeも必要だったりします(頑張れば依存関係を排除できる)。

    # 広くないけどメジャーと言われれば否定はしません。

    • 回答としてマーク uc1991 2013年2月4日 7:22
    2013年2月1日 4:38
  • そういえばその表、1ヶ所間違ってますね。Windows Server 2003は.NET Framework 1.1が標準でインストールされているため、Windows Server 2003 - .NET Frameworkなし の項目は「該当せず」です。

    Windows 7やWindows 8も並べたり、.NET Framework 4 Client Profileのことなど、現状に合わせてアップデートされないと…。

    • 回答としてマーク uc1991 2013年2月4日 7:21
    2013年2月2日 1:25

すべての返信

  • app.configに sku="client" を含めるだけですが。

    ところで、.NET Framework 3.5 Client Profileが適用可能な環境はあまり広くありませんが、ご存知でしょうか? またC++/CLIでは.NET Frameworkの他にVC++ Runtimeも必要だったりします(頑張れば依存関係を排除できる)。

    # 広くないけどメジャーと言われれば否定はしません。

    • 回答としてマーク uc1991 2013年2月4日 7:22
    2013年2月1日 4:38
  • 早速のレスありがとうございます。

    app.configについて調べてみました。プロジェクトと同じフォルダに作成しておくことでビルド時に読み込ませることが出来るのですね。

    .NET Frameworkはあまり経験がなかったのと、引き継いだプロジェクトにはapp.configファイルがなかったので気が付きませんでした。

    >ところで、.NET Framework 3.5 Client Profileが適用可能な環境はあまり広くありませんが、

    >ご存知でしょうか? またC++/CLIでは.NET Frameworkの他にVC++ Runtimeも必要だった

    >りします(頑張れば依存関係を排除できる)。

    こちらについても、詳しくは知っていませんでした。

    引き継いだプロジェクトがそもそもそういう構成で作成されていたので…。

    この点についても、よく確認してみようと思います。

    貴重なご意見、ありがとうございました。

    2013年2月1日 5:37
  • こちらについても、詳しくは知っていませんでした。
    引き継いだプロジェクトがそもそもそういう構成で作成されていたので…。
    この点についても、よく確認してみようと思います。

    貴重なご意見、ありがとうございました。

    以下のページにある表で「Client Profile」と書かれている組み合わせのみ有効です。(つまり、XP にしか意味がない)
    その他の「3.5 SP1」と書かれているものは Client Profile ではなく、フルセットのインストールが必要ですし、「該当なし」はデフォルトで入っているので不要ということになります。
    http://blogs.msdn.com/b/dd_jpn/archive/2008/09/01/8914878.aspx

    (Windows 8 は後から 3.5.1 のフルセットの追加インストールが必要です)

    2013年2月1日 14:48
    モデレータ
  • そういえばその表、1ヶ所間違ってますね。Windows Server 2003は.NET Framework 1.1が標準でインストールされているため、Windows Server 2003 - .NET Frameworkなし の項目は「該当せず」です。

    Windows 7やWindows 8も並べたり、.NET Framework 4 Client Profileのことなど、現状に合わせてアップデートされないと…。

    • 回答としてマーク uc1991 2013年2月4日 7:21
    2013年2月2日 1:25