나는 비주얼 스튜디오 매크로를 사용하여이 작업을 수행. 매크로 편집기 (Alt 키 + F11)을 EvironmentEvents 파일이 존재에서
.
여기서는
BuildEvents_OnBuildProjConfigDone
이벤트를 사용합니다.
나는 이것을 항상 내 작업 폴더에 복사하는 데 사용합니다.
예 :
Private targetPath As String = "C:\..."
Private Sub BuildEvents_OnBuildProjConfigDone(ByVal ProjectName As String, ByVal ProjectConfig As String, ByVal Platform As String, ByVal SolutionConfig As String, ByVal Success As Boolean) Handles BuildEvents.OnBuildProjConfigDone
On Error GoTo ext
If Not Success Then Exit Sub
'Absolute path to assembly
Dim tar = targetPath
Dim project As Project = DTE.Solution.Projects.Item(ProjectName)
Dim projectFolder As String = Path.GetDirectoryName(project.FileName)
Dim config As EnvDTE.Configuration = project.ConfigurationManager.ActiveConfiguration
Dim outputPath As String = CStr(config.Properties.Item("OutputPath").Value)
Dim assemblyName As String = CStr(project.Properties.Item("AssemblyName").Value)
Dim assemblyFileName As String = CStr(project.Properties.Item("OutputFileName").Value)
Dim src As String = Path.Combine(Path.Combine(projectFolder, outputPath), assemblyFileName)
'Copy files to working folder
On Error GoTo err
Dim dst As String
dst = Path.Combine(tar, assemblyFileName)
DTE.ToolWindows.OutputWindow.ActivePane.OutputString(outTag + assemblyName + " -> " + dst + vbCrLf)
File.Copy(src, dst, True)
src = src.Substring(0, src.Length - 3) + "pdb"
dst = dst.Substring(0, dst.Length - 3) + "pdb"
DTE.ToolWindows.OutputWindow.ActivePane.OutputString(outTag + assemblyName + " -> " + dst + vbCrLf)
File.Copy(src, dst, True)
Exit Sub
err:
DTE.ToolWindows.OutputWindow.ActivePane.OutputString(outTag + Err.Description + vbCrLf)
ext:
End Sub
출처
2013-03-12 13:11:15
joe
우리는 이것에 대해서도 생각했지만 Visual Studio에 내재되어있는 것을 찾고 있으므로 이와 같은 일을하기 위해 별도의 추가 응용 프로그램이 필요하지 않습니다. – wdumon
Ok thats fair :) –