Partilhar via


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: String

    Necessá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: String

    Necessá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: prjCopyProjectOption

    Necessá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: String

    Necessário. ID de logon de rede do usuário

  • bstrPassword
    Tipo: String

    Necessá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

Consulte também

Referência

VSProject2 Interface

Namespace VSLangProj80