Método VSProject2.GetUniqueFilename (Object, String, String)
Gera um nome de arquivo exclusivo dentro do projeto. ele é usado para nomear novos itens de projeto.
Namespace: VSLangProj80
Assembly: VSLangProj80 (em VSLangProj80.dll)
Sintaxe
'Declaração
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
Parâmetros
- pDispatch
Tipo: System.Object
O nome gerado tem esse valor como a extensão.
- bstrRoot
Tipo: System.String
A Project objeto ou uma pasta ProjectItem objeto.O nome de arquivo gerado é exclusivo dentro desse contexto.
- bstrDesiredExt
Tipo: System.String
O nome gerado começa com essa seqüência.
Valor de retorno
Tipo: System.String
Uma seqüência de caracteres que representa um nome de arquivo que é exclusivo no projeto ou pasta do projeto.Se o primeiro parâmetro é um Project instância, e em seguida, o nome gerado é exclusivo dentro da pasta de projeto raiz.O nome do arquivo assume a forma raiz?.Extensão, onde ? é um ou mais numerais (1, 2, 3 e assim por diante).
Implementações
VSProject.GetUniqueFilename(Object, String, String)
Comentários
Um uso típico para esse método é gerar um nome para um novo item de projeto.
Se você chamar esse método com KeyFile como a raiz e snk como a extensão, a seqüência de caracteres retornada é keyfile. snk, se o arquivo keyfile. snk ainda não existir. Se já existir o arquivo keyfile. snk, KeyFile1.snk é retornado. Observe que, se várias chamadas são feitas para este método, e nenhum arquivo é criado a partir do nome de arquivo retornado, todas as chamadas de retornam o mesmo valor. Os resultados dependem apenas os arquivos que existem no momento da chamada do método.
Exemplos
Este exemplo exibe o nome do arquivo que é exclusivo na pasta do projeto, na raiz do formulário?.ext. Para executar este exemplo como um suplemento, consulte Como: compilar e Executar a automação de exemplos de Código do modelo de objeto. Abrir um Visual Basic ou Visual C# o projeto antes de executar este exemplo.
[Visual Basic]
' Este exemplo exibe um nome de arquivo é a único a
' project folder, in the form, root?.ext.
Public Sub OnConnection(ByVal application As Object,_
ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
ByRef custom As Array) Implements IDTExtensibility2.OnConnection
applicationObject = CType(application, DTE2)
addInInstance = CType(addInInst, AddIn)
GetUniqueName(applicationObject)
End Sub
Sub GetUniqueName(ByVal dte As DTE2)
Dim proj As Project
proj = applicationObject.Solution.Projects.Item(1)
Dim vsproj As VSLangProj80.VSProject2 = _
CType(proj.Object, VSLangProj80.VSProject2)
MsgBox(vsproj.GetUniqueFilename(proj, "Root", "ext"))
End Sub
[C#]
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
// This example displays a file name that is unique in the
// project folder, in the form, root?.ext.
public void OnConnection(object application,
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
applicationObject = (DTE2)application;
addInInstance = (AddIn)addInInst;
GetUniqueName((DTE2)applicationObject);
}
public void GetUniqueName(DTE2 dte)
{
Project proj = null;
proj = applicationObject.Solution.Projects.Item(1);
VSLangProj80.VSProject2 vsproj =
((VSLangProj80.VSProject2)(proj.Object));
MessageBox.Show(vsproj.GetUniqueFilename(proj, "Root", "ext"));
}
Segurança do .NET Framework
- Confiança total para o chamador imediato. O membro não pode ser usado por código parcialmente confiável. Para obter mais informações, consulte Usando bibliotecas de código parcialmente confiáveis.