次の方法で共有


VSProject.GetUniqueFilename メソッド

プロジェクト内で一意のファイル名を生成します。 新しいプロジェクト項目に名前を付けるために使用します。

名前空間:  VSLangProj
アセンブリ:  VSLangProj (VSLangProj.dll 内)

構文

'宣言
Function GetUniqueFilename ( _
    pDispatch As Object, _
    bstrRoot As String, _
    bstrDesiredExt As String _
) As String
string GetUniqueFilename(
    Object pDispatch,
    string bstrRoot,
    string bstrDesiredExt
)
String^ GetUniqueFilename(
    [InAttribute] Object^ pDispatch, 
    [InAttribute] String^ bstrRoot, 
    [InAttribute] String^ bstrDesiredExt
)
abstract GetUniqueFilename : 
        pDispatch:Object * 
        bstrRoot:string * 
        bstrDesiredExt:string -> string 
function GetUniqueFilename(
    pDispatch : Object, 
    bstrRoot : String, 
    bstrDesiredExt : String
) : String

パラメーター

  • pDispatch
    型: System.Object
    生成されるファイル名の拡張子になります。
  • bstrRoot
    型: System.String
    Project オブジェクトまたはフォルダーの ProjectItem オブジェクト。生成されるファイル名は、このコンテキスト内で一意になります。
  • bstrDesiredExt
    型: System.String
    生成される名前は、この文字列で始まります。

戻り値

型: System.String
プロジェクトまたはプロジェクト フォルダーで一意のファイル名を返します。最初のパラメーターが Project インスタンスの場合、生成される名前はルート プロジェクト フォルダー内で一意になります。ファイル名は Root?.Extension の形式です。? には、1、2、3 などの 1 つ以上の数字が入ります。

解説

このメソッドは一般的に、新しいプロジェクト項目の名前を生成するときに使用します。

ルートに KeyFile、拡張子に snk を指定して、このメソッドを呼び出したときに、KeyFile.snk というファイルが存在しない場合は KeyFile.snk という文字列が返されます。 KeyFile.snk というファイルが既に存在する場合は、KeyFile1.snk が返されます。 このメソッドを複数回呼び出しても返されたファイル名のファイルが作成されない場合は、すべての呼び出しで同じ値が返されます。 結果は、メソッドの呼び出し時に存在するファイルによって決まります。

[Visual Basic]

' This macro displays a file name that is unique in the 
' project folder, in the form root?.ext.
' Macro editor
Imports VSLangProj
Imports VSLangProj80
Sub GetUniqueName()
   Dim proj As Project
   proj = DTE.Solution.Projects.Item(1)
   Dim vsproj As VSLangProj.VSProject = _
      CType(proj.Object, VSLangProj.VSProject)
   MsgBox(vsproj.GetUniqueFilename(proj, "Root", "ext"))
End Sub

.NET Framework セキュリティ

  • 直前の呼び出し元に対する完全な信頼。 このメンバーは、部分的に信頼されているコードから使用することはできません。 詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

参照

VSProject インターフェイス

VSLangProj 名前空間