VS2010 프로젝트에 파일을 포함하여 빌드 또는 게시 중에 자동으로 빌드 출력 디렉토리에 복사하는 방법
작업은 Visual Studio 2010 프로젝트를 구성하여 빌드하거나 게시하는 동안 일부 foo.exe
유틸리티를 출력 ( bin
) 디렉터리에 복사해야합니다 .
일찍 나는 .csproj (MSBuild-file)에서 PostBuildEvent 작업을 만들었습니다.
<PropertyGroup>
<PostBuildEvent>
Copy "$(SolutionDir)Tools\foo.exe" "$(ProjectDir)$(OutDir)foo.exe"
</PostBuildEvent>
</PropertyGroup>
그러나 이것은 보편적이지 않습니다. (비주얼 스튜디오 2010) 게시하는 동안 foo.exe
나타납니다 bin
디렉토리하지만, 디렉토리를 게시 출력에 복사되지 않습니다. 아마도 내가 모든 것을 완전히 잘못하고 나중에 빌드 또는 게시 중에 복사 할 프로젝트에 파일을 포함시키는 표준 메커니즘이 bin
있습니까?
빌드 후 이벤트가 있으며 종속되지 않습니다.
프로젝트에 파일을 추가 한 다음 파일 속성에서 "출력 디렉터리로 복사"에서 "항상 복사"또는 "최신 인 경우 복사"를 선택합니다.
MSDN을 참조하십시오 .
빌드하는 동안 파일 만 푸시하면되므로 다음과 같이 빌드 후 이벤트 명령 줄 항목을 추가했습니다.
Copy /Y "$(SolutionDir)Third Party\SomeLibrary\*" "$(TargetDir)"
솔루션 탐색기에서 프로젝트를 마우스 오른쪽 단추로 클릭 한 다음 속성> 빌드 이벤트를 클릭하여 설정할 수 있습니다.
솔루션 탐색기에서 출력 디렉터리에 복사 할 파일을 선택하고 두 가지 속성을 할당하십시오.-빌드 작업 = 콘텐츠-출력 디렉터리에 복사 = 항상 복사
이것은 트릭을 할 것입니다.
- 프로젝트에 파일을 추가하십시오.
- 해당 파일의 속성으로 이동합니다.
- "Build Action"을 Embedded Resource로 설정합니다.
- "출력 디렉토리로 복사"를 항상 복사로 설정하십시오.
내 경우에는, 설정 Copy to Output Directory
에 Copy Always
한 재 구축하면서, 트릭을하지 않았고 빌드.
이것이 누군가를 돕기를 바랍니다!
서비스 / 웹 프로젝트 에서 누락 된 dll에 대한 참조를 직접 추가해보십시오 . 다른 프로젝트에 대한 참조를 추가해도 효과가 없었습니다.
필요한 dll을 모두 복사하지 않았기 때문에 웹 앱을 게시 할 때만이 작업을 수행해야했습니다.
신경 장애가있는 동료들이 여기에서 기회를 잡을 수 있도록 웹 프로젝트의 경우 링크 된 파일이 외부 .config 파일 인 경우 "출력 디렉토리"가 web.config가있는 동일한 디렉토리라고 가정했습니다. 즉 웹 프로젝트의 루트입니다. 돌이켜 보면 링크 된 파일을 root / bin 폴더에 복사하는 것은 전혀 놀라운 일이 아닙니다.
따라서 appSettings 포함 파일 인 경우 web.config의 열기 태그는
<appSettings file=".\bin\includedAppSettingsFile.config">
이런.
'program tip' 카테고리의 다른 글
Android의 여러 MIME 유형 (0) | 2020.11.11 |
---|---|
어떤 Linux IPC 기술을 사용해야합니까? (0) | 2020.11.11 |
점 구문 대신 문자열을 사용하여 Django 모델의 필드에 액세스 하시겠습니까? (0) | 2020.11.11 |
Laravel Eloquent-한 줄 가져 오기 (0) | 2020.11.10 |
TensorFlow로 개별 작업의 실행 시간을 측정 할 수 있습니까? (0) | 2020.11.10 |