VSProject2.CopyProject 메서드
웹 프로젝트의 일부 또는 전체를 새 위치로 복사합니다.
네임스페이스: VSLangProj80
어셈블리: VSLangProj80(VSLangProj80.dll)
구문
‘선언
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
)
매개 변수
bstrDestFolder
형식: String필수입니다. 새 프로젝트의 대상 폴더입니다. 폴더가 없으면 새로 만들어집니다. 이 문자열의 형식은 https://ServerName/CopyName/입니다.
bstrDestUNCPath
형식: String필수입니다. 복사할 프로젝트에서 파일 공유 액세스를 사용하는 경우의 파일 공유 UNC 경로입니다. 프로젝트에서 FrontPage Server Extensions 액세스를 사용하는 경우 빈 문자열을 사용합니다.
copyProjectOption
형식: prjCopyProjectOption필수입니다. 복사할 프로젝트 파일을 지정하는 prjCopyProjectOption 값이며 모든 파일, 모든 프로젝트 파일 또는 응용 프로그램 실행에 필요한 파일로 지정할 수 있습니다.
bstrUsername
형식: String필수입니다. 사용자의 네트워크 로그인 ID입니다.
bstrPassword
형식: String필수입니다. 사용자의 암호입니다.
설명
이 메서드는 웹 프로젝트를 복사하는 데 사용되며 프로젝트 파일의 단순한 xcopy보다 많은 기능을 제공하지만 배포보다는 적은 기능을 제공합니다. CopyProject 메서드는 IIS와 웹 서버의 프로젝트 폴더를 적절히 변경하므로 이전과 같이 프로젝트에서 개발 작업을 계속할 수 있습니다. 배포는 데이터베이스 및 메시지 큐 만들기 등 더 많은 웹 설정 기능을 제공합니다.
이 메서드는 웹 프로젝트만 복사합니다. 웹 프로젝트는 새 프로젝트 대화 상자에서 ASP.NET 웹 응용 프로그램, XML Web services 및 빈 웹 프로젝트 템플릿을 사용하여 만듭니다. 로컬 프로젝트인 경우 예외가 발생합니다.
대상 폴더나 파일이 이미 있으면 덮어씁니다.
예제
이 예제에서는 솔루션의 첫 번째 프로젝트가 Visual Basic 또는 Visual C# 프로젝트이면 해당 프로젝트를 복사합니다. 이 예제를 추가 기능으로 실행하려면 방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행을 참조하십시오.
[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.");
}
}
.NET Framework 보안
- 직접 실행 호출자의 경우 완전히 신뢰합니다. 이 멤버는 부분적으로 신뢰할 수 있는 코드에서 사용할 수 없습니다. 자세한 내용은 부분 신뢰 코드에서 라이브러리 사용를 참조하세요.