SharePoint Foundation ソリューションを使用して UDF を展開するDeploy UDFs using SharePoint Foundation solutions

この使用例は、Microsoft SharePoint Foundation ソリューション フレームワークを使用してユーザー定義関数 (UDF) の DLL を配置する方法を示しています。This example shows how to deploy a user-defined function (UDF) DLL by using the Microsoft SharePoint Foundation solution framework.

SharePoint Foundation ソリューション フレームワークでは、SharePoint Foundation を拡張するすべてのコンポーネントをソリューション ファイル (CAB ベースの形式で拡張子は .wsp) という新しいファイルにバンドルすることができます。ソリューション ファイルは、一連の機能、サイト定義、アセンブリを含めることができる、展開かつ再使用が可能なパッケージです。ソリューション ファイルをサイトに適用して、個別に有効化または無効化できます。さらに、ソリューション ファイルを使用して、アセンブリ、クラスのリソース、.dwp ファイル、その他のパッケージ コンポーネントなどの Web パーツ パッケージのコンテンツを配置することもできます。SharePoint Foundation ソリューション フレームワークの詳細については、「Getting Started with Development for SharePoint Foundation 2010」( の SharePoint Foundation ノードを参照してください。SharePoint Foundation ソリューション フレームワークを使用して UDF アセンブリを作成して配置する手順は次のとおりです。The SharePoint Foundation solution framework lets you bundle all the components to extend SharePoint Foundation in a new file called a solution file (a CAB-based format with a .wsp extension). A solution is a deployable, reusable package that can contain a set of features, site definitions, and assemblies that you can apply to a site, and individually enable or disable. Additionally, you can use the solution file to deploy the contents of a web part package, including assemblies, class resources, .dwp files, and other package components. For more information about the SharePoint Foundation solution framework, see the SharePoint Foundation node in the Getting Started with Development for SharePoint Foundation 2010 ( The procedure for creating and deploying a UDF assembly by using SharePoint Foundation solution framework is as follows:

  1. ソリューション マニフェスト ファイル Manifest.xml を作成します。Create the solution manifest file, Manifest.xml.

    ソリューション マニフェスト (常に Manifest.xml というファイル名) は、ソリューション ファイルのルートに格納されます。このファイルで、機能、サイト定義、リソース ファイル、Web パーツ ファイル、処理するアセンブリのリストを定義しますが、ファイル構造は定義しません。ソリューションに含まれているファイルが、マニフェスト XML ファイルに含まれていない場合、それらのファイルは処理されません。The solution manifest (always called Manifest.xml) is stored at the root of a solution file. This file defines the list of features, site definitions, resource files, web part files, and assemblies to be processed. It does not define the file structure; if files are included in a solution but not listed in the manifest XML file, they are not processed in any way.


    マニフェスト XML ファイルの構造の詳細は、SharePoint Foundation のドキュメントを参照してください。For more information about the structure of the manifest XML file, see the SharePoint Foundation documentation.

  2. UDF アセンブリと Manifest.xml を CAB ファイルにパッケージ化します。Package the UDF assembly and Manifest.xml into a CAB file.

  3. SharePoint Foundation 管理サービスがサーバー上で実行していることを確認してください。Make sure that the SharePoint Foundation Administration service is running on the server.

  4. Stsadm.exe を使用して、ソリューションをサーバーに追加します。Add the solution to the server by using stsadm.exe.

  5. Stsadm.exe を使用して、ソリューションを配置します。Deploy the solution by using stsadm.exe.

それぞれの Excel Services の信頼できる場所には、AllowUdfs フラグが設定されています。Each Excel Services trusted location has an AllowUdfs flag.


AllowUdfs フラグは、[Excel Services: 信頼できるファイル保存場所] ページにある [許可されたユーザー定義関数] オプションによって示されます。The AllowUdfs flag is denoted by the User-defined functions allowed option on the Excel Services Trusted File Locations page. [信頼できるファイル保存場所] ページへの移動方法については、「ステップ 3: UDF を展開して有効化する」を参照してください。To learn how to navigate to the Trusted File Locations page, see Step 3: Deploying and Enabling UDFs.

特定の信頼できる場所から UDF を呼び出せるようにするには、次に示す操作が必要になります。In order to allow UDFs to be called from a specific trusted location, you must:

  • [ AllowUdfs] の値を true にします。既定値は false です。Set the AllowUdfs value to true. The default value is false.

  • UDF アセンブリを信頼できる UDF リストに追加して、ブックからの UDF の呼び出しを許可します。Add the UDF assembly to the trusted UDF list to allow the UDF to be called from a workbook.

UDF を有効化する方法と信頼できる UDF リストに UDF を追加する方法の詳細は、「UDF を有効にする方法」を参照してください。For more information on how to enable UDFs and add UDFs to the trusted UDF list, see How to: Enable UDFs.


名前の競合を回避するには、UDF アセンブリとその依存関係に厳密な名前を付けて、できるだけ一意になるような名前にします。To avoid name collision, give your UDF assemblies and their dependencies strong names, and name them as uniquely as possible. 詳細については、「Excel Services のベスト プラクティス」と「Excel Services の既知の問題とヒント」を参照してください。For more information, see Excel Services Best Practices and Excel Services Known Issues and Tips.


Manifest.xml ファイルを作成するにはTo create the Manifest.xml file

  1. [ ソリューション エクスプローラー] で、[ 追加] をポイントしてから、[ 新しいアイテム] をクリックします。Right-click your project in Solution Explorer, point to Add, and then click New Item.

  2. [ XML ファイル] を選択し、ファイル名を「Manifest.xml」とします。Select XML File, and name the file Manifest.xml.

  3. [追加] をクリックします。Click Add.

  4. 次に示すコンテンツをファイルに追加します。Add the following content to the file:

<?xml version="1.0" encoding="utf-8" ?>
<Solution xmlns="" SolutionId="{57568687-2CC0-45bf-B66A-2D50D57108CA}" DeploymentServerType="ApplicationServer">
    <Assembly DeploymentTarget="GlobalAssemblyCache" Location="EcsUdfsCommonSet.dll"/>
> [!NOTE]
> You should generate a unique GUID for each solution. For more information about **Solution** element, see the SharePoint Foundation [Solutions and web part Packages]( (

ソリューション パッケージを作成するにはTo create a solution package

  • ソリューション ファイルの作成方法の詳細については、SharePoint Foundation SDK の「ソリューションおよび Web パーツ パッケージ」の下にある「ソリューションの作成」トピックを参照してください。For information about how to create the solution file, see the "Creating a Solution" topic under the "Solutions and web part Packages" node in the SharePoint Foundation SDK.

SharePoint Foundation の管理が実行されているかどうかを確認するにはTo verify whether SharePoint Foundation Administration is running

  1. [ 開始] をクリックし、[ 管理ツール] をポイントしてから、[ サービス] をダブルクリックします。Click Start, point to Administrative Tools, and then double-click Services.

    [ サービス] ダイアログ ボックスが表示されます。The Services dialog box appears.

  2. SharePoint Foundation 管理サービスのステータスが「 開始」であることを確認します。「開始」でない場合は、[SharePoint Foundation 管理] を右クリックしてから [ 開始] をクリックします。Make sure that the status of SharePoint Foundation Administration service shows Started. If it does not, right-click SharePoint Foundation Administration, and then select Start.

ソリューションを追加するにはTo add the solution

  1. [ スタート ]、[ ファイル名を指定して実行 ] の順にクリックしてから、「cmd」と入力します。Click Start, click Run, and then typecmd.

    コマンド プロンプト コンソールが表示されます。The command prompt console appears.

  2. SharePoint サーバーにソリューションを追加するには、次のスクリプトを実行します。Run the following script to add the solution to SharePoint server:

    stsadm.exe -o addsolution -filename stsadm.exe -o addsolution -filename


    Stsadm.exe は、C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN にあります。You can find the Stsadm.exe at: > C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\BIN.


    Stsadm.exe コマンド オプションの詳細については、「Stsadm と Windows PowerShell 間のマッピング (SharePoint Foundation 2010)」( を参照してください。For more information about Stsadm.exe command options, see the Stsadm to Windows PowerShell Mapping (SharePoint Foundation 2010) (

ソリューションを展開するにはTo deploy the solution

  1. [ スタート ]、[ ファイル名を指定して実行 ] をクリックしてから、「cmd」と入力します。Click Start, click Run, and then typecmd.

    コマンド プロンプト コンソールが表示されます。The command prompt console appears.

  2. ソリューションを SharePoint サーバーに配置するには、次のスクリプトを実行します。Run the following script to deploy the solution to SharePoint server.

    stsadm.exe -o deploysolution -name -immediate -allowGacDeploymentstsadm.exe -o deploysolution -name -immediate -allowGacDeployment

    グローバル アセンブリ キャッシュに UDF DLL が表示されます。You should now see your UDF DLL in the global assembly cache.

関連項目See also


方法: Web サービスを呼び出す UDF の作成How to: Create a UDF That Calls a Web Service

UDF を有効にする方法How to: Enable UDFs

方法: UDF コード アクセス セキュリティのアクセス許可を制限するHow to: Restrict UDF Code Access Security Permissions


チュートリアル: マネージ コード UDF を開発するWalkthrough: Developing a Managed-Code UDF

Excel Services UDF に関するよく寄せられる質問Frequently Asked Questions About Excel Services UDFs

Excel Services UDF の理解Understanding Excel Services UDFs