Método VSProject2.CopyProject
Copia qualquer ou qualquer projeto Web em um novo local.
Namespace: VSLangProj80
Assembly: VSLangProj80 (em VSLangProj80.dll)
Sintaxe
'Declaração
Sub CopyProject ( _
bstrDestFolder As String, _
bstrDestUNCPath As String, _
copyProjectOption As prjCopyProjectOption, _
bstrUsername As String, _
bstrPassword As String _
)
void CopyProject(
string bstrDestFolder,
string bstrDestUNCPath,
prjCopyProjectOption copyProjectOption,
string bstrUsername,
string bstrPassword
)
void CopyProject(
[InAttribute] String^ bstrDestFolder,
[InAttribute] String^ bstrDestUNCPath,
[InAttribute] prjCopyProjectOption copyProjectOption,
[InAttribute] String^ bstrUsername,
[InAttribute] String^ bstrPassword
)
abstract CopyProject :
bstrDestFolder:string *
bstrDestUNCPath:string *
copyProjectOption:prjCopyProjectOption *
bstrUsername:string *
bstrPassword:string -> unit
function CopyProject(
bstrDestFolder : String,
bstrDestUNCPath : String,
copyProjectOption : prjCopyProjectOption,
bstrUsername : String,
bstrPassword : String
)
Parâmetros
bstrDestFolder
Tipo: StringNecessário. A pasta de destino para o novo projeto. A pasta é criada se não existir. Essa cadeia de caracteres assume a forma, https://ServerName/CopyName/.
bstrDestUNCPath
Tipo: StringNecessário. O caminho UNC para o compartilhamento de arquivos se o projeto a ser copiado está usando o acesso ao compartilhamento de arquivos. Use a cadeia de caracteres vazia se o projeto está usando o acesso das extensões do servidor de FrontPage.
copyProjectOption
Tipo: prjCopyProjectOptionNecessário. Um valor de prjCopyProjectOption que determina quais arquivos de projeto são copiados — todos os arquivos, todos os arquivos de projeto, ou arquive necessária apenas para executar o aplicativo.
bstrUsername
Tipo: StringNecessário. ID de logon de rede do usuário
bstrPassword
Tipo: StringNecessário. A senha do usuário.
Comentários
Esse método, usado para copiar projetos da Web, fornece mais funcionalidade de xcopy simples dos arquivos do projeto, mas menos funcionalidade da implantação. O método de CopyProject faz as alterações apropriadas ao IIS e a pasta de projeto no servidor Web, de modo que o desenvolvimento pode continuar como de costume no projeto. A implantação fornece mais recursos para configurar Web, incluindo criar bases de dados e filas de mensagens.
Esse método copia somente projetos da Web. Os projetos da Web são projetos criados no aplicativo Web de ASP.NET , serviço Web XML, e vazias modelos de projeto Web na caixa de diálogo de Novo Projeto . Se o projeto é um projeto local, será gerada uma exceção.
Se as pastas ou os arquivos de destino já existirem, ela será substituída.
Exemplos
Esse exemplo copia o primeiro projeto na solução, desde que é um projeto de Visual Basic ou deVisual C# . Para executar este exemplo como um suplemento, consulte Como compilar e executar os exemplos de código do modelo de objeto Automation.
[Visual Basic]
' Add-in code.
' Copies the first project in the solution.
' This procedure could fail if the first project is not a Visual Basic,
' or Visual C# project, or if the project is not a Web
' application.
Imports VSLangProj
Imports VSLangProj80
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)
CopyWeb(applicationObject)
End Sub
Public Sub CopyWeb(ByVal dte As DTE2)
Try
Dim proj As VSProject2 = _
CType(applicationObject.Solution.Projects.Item(1).Object, _
VSProject2)
proj.CopyProject("https://Localhost/Copy_of_Project", "", _
prjCopyProjectOption.prjRunFiles, "", "")
Catch ex As System.Exception
MsgBox("Cannot copy Web project.")
End Try
End Sub
[C#]
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application, ext_ConnectMode
connectMode, object addInInst, ref Array custom)
{
applicationObject = (DTE2)application;
addInInstance = (AddIn)addInInst;
CopyWeb((DTE2)applicationObject);
}
public void CopyWeb( DTE2 dte ) {
try {
VSProject2 proj = ( ( VSProject2 )
(applicationObject.Solution.Projects.Item( 1 ).Object ) );
proj.CopyProject( "https://Localhost/Copy_of_Project", "",
prjCopyProjectOption.prjRunFiles, "", "" );
}
catch ( System.Exception ex ) {
MessageBox.Show(ex.ToString());
MessageBox.Show( "Cannot copy Web project.");
}
}
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ável.