Programming

사용자가 매핑 한 섹션이 열린 파일에서 요청한 작업을 수행 할 수 없습니다.

procodes 2020. 5. 12. 20:21
반응형

사용자가 매핑 한 섹션이 열린 파일에서 요청한 작업을 수행 할 수 없습니다.


기본 서비스를 중지 한 후 4 개의 파일을 bin 폴더에 복사하려고 할 때마다 하나의 파일 (TexteDll)에 오류가 발생합니다. 오류는 다음과 같습니다

Cannot copy TexteDll: The requested operation cannot be performed on a file 
with a user-mapped section open

시스템 잠금으로 인한 것일 수 있습니다. 또는 다른 프로세스가이 DLL을 사용 중일 수 있습니다. 내가봤을 때 시스템을 재부팅하면 문제가 해결 될 수 있음을 발견했습니다.

아무도 이것에 대한 원인이나 해결책을 제안 할 수 있습니까? TexteDll 속성 (일반, 버전, 보안 등)을 검사했습니다. 모든 것이 정상으로 보입니다.


제 경우에는 디버그 폴더에 컴파일 된 DLL을 잠그는 탐색기였습니다 ... 이상하지 않습니까?

Unlocker라는 도구를 사용하여 알게되었습니다.

파일에 대한 잠금이 없다고 말했을 때에도 Unlocker로 삭제해야했으며 단일 파일을 삭제하지 않으면 폴더를 삭제할 수 없었습니다 ...

그 후 그것은 컴파일되었습니다.

편집하다:

내 경우에 왜 이런 일이 발생했는지 알아 냈습니다. Visual Studio의 텍스트 편집기에서 DLL을 열었습니다 ...


  • 때로는 두 개 이상의 프로젝트 사이에서 참조 된 어셈블리 버전 불일치에 대한 경고를 두 번 클릭하면 어셈블리 뷰 창을 닫는 것을 잊어 버리고 다른 탭 사이에 유지됩니다. 따라서 VS 자체에 의해 어셈블리가 잠기고 그것을 알아내는 데 꽤 많은 시간이 걸렸습니다. :)

    VS가 제공하는 힘에주의하십시오.)

  • 또 다른 더미 시나리오. 때로는 전체 obj 폴더를 삭제하거나 잠긴 파일 이이 crappy 오류를 해결하는 데 도움이되므로 파일을 경고합니다.

VS의 모든 문서를 닫고 다시 빌드하십시오. 작동하지 않으면 VS를 다시 시작하십시오. 이 문제는 DLL 파일의 잠금과 관련이 있습니다.


Visual Studio를 닫고 bin을 삭제하고 릴리스 폴더를 디버그 한 다음 Visual Studio 프로젝트를 다시 시작하십시오. 그게 내 문제를 해결했다.


나는 같은 문제가 있었고 내 경우에는 기존 출력 파일이 다른 응용 프로그램에 의해 잠겨있는 것처럼 보였습니다.

OpenedFilesView를 사용하여 출력 파일을 잠그는 응용 프로그램을 확인할 수 있습니다. http://www.nirsoft.net/utils/opened_files_view.html


다른 사람들은 이미이 오류가 다른 응용 프로그램이 파일을 잠 갔기 때문에 발생한다는 것을 확인했습니다. git diff종료 할 때까지 파일 잠그는 것을 지적하고 싶었 습니다. 그것이 내 경우에 이것을 일으킨 원인입니다.


나는 개발자이며 Unlocker와 같은 Registery에 주입 된 앱을 좋아하지 않습니다. SysInternals Process Explorer사용 Find > Find Handle or Dll [Ctrl-F]하여 프로세스가 내 dll을 잠그고 프로세스를 종료했습니다.


필자의 경우 MSBuild.exe파일을 잠그는 교수형 프로세스를 종료해야했습니다 (Visual Studio를 닫은 후에도있었습니다).


안티 바이러스 소프트웨어를 실행 중입니까? AV 소프트웨어 (또는 다른 소프트웨어)가 파일 매핑 API를 사용하여 파일을 읽고있을 수 있으며 문제를 일으켰습니다.


나는 같은 문제가 있었다. 내가 해결 한 방법은 다음과 같습니다.

  1. "작업 관리자"를여십시오
  2. 작업 종료 "Explorer.exe"
  3. "파일"을 클릭하십시오-> 새 작업 생성- "explorer.exe"를 입력하십시오-> 확인
  4. 내 프로젝트를 청소하면 작동합니다

나는 같은 문제가 있었다. 다시 시작하지 못했습니다. 작업 관리자에서 VBSCompiler라는 프로세스가 실행되고있었습니다. 이 오류를 해결하려면 프로세스를 종료해야했습니다.


여기에 게시 된 솔루션 중 어느 것도 나를 위해 일하지 않았습니다. 파일을 잠그는 devenv.exe (Visual Studio) 였지만 다시 시작하면 다시 잠글 것입니다.

기이하게도 Windows는 휴지통으로 파일을 삭제할 수는 없지만 Shift + Delete (영구 삭제)는 작동했습니다.


obj 폴더를 삭제하고 다시 작성하면 효과가 있습니다.


Visual Studio를 닫고 관리자 권한으로 실행하십시오. 내 문제가 해결되었습니다.


나를위한 해결책은 모든 VS 인스턴스를 닫고 매달려있는 devenv.exe 프로세스를 종료하는 것이 었습니다.


Ant로 Dot Net 애플리케이션을 빌드 할 때 이러한 오류가 발생했습니다.

제 경우에는 회사 백업 소프트웨어 인 Symantec DLO Agent였습니다. 바이러스 백신 소프트웨어에서 디렉토리를 제외하고 디렉토리를 제외하고 Visual Studio를 닫는 것이 작동하는 것 같습니다.


나를위한 해결책은 컴퓨터를 다시 시작하는 것이 었습니다.


내 경우에는 프로젝트 루트에서 obj 폴더를 삭제하고 프로젝트를 다시 빌드하면 내 문제가 해결되었습니다!


지적 에 의해 2016 년 앤드류 커스버트 자식은 diff 잠금 파일은 당신이 그것을 밖으로 종료 잘 때까지 같은 것을.

Git 2.23 (2019 년 3 분기)에는 해당되지 않습니다.

Johannes Schindelin ( )의 commit 3aef54e (2019 년 7 월 11 일)를 참조하십시오 . ( Junio ​​C Hamano의해 병합 - 커밋 d9beb46 , 2019 년 7 월 25 일)dscho
gitster

diff: munmap()외부 diff를 실행하기 전에 파일 내용

a에서 외부 diff를 실행할 때 diff tool문제의 파일을 작성한다고 가정하는 것이 안전합니다.
Windows에서 이는 해당 파일에 대한 열린 핸들을 유지하는 다른 프로세스 나 매핑 된 영역을 가질 수 없음을 의미합니다.

따라서 git diff문제의 파일에 대해 열린 핸들을 가지고 있지 않은지 확인하십시오 .

실제로 외부 diff가 방금 쓴 파일을 사용하므로 파일 쌍을 즉시 해제하므로 더 이상 파일 내용을 메모리에 보관할 필요가 없습니다.

이것은 git-for-windows # 1315를 수정합니다.


이 오류가 발생하여 FxCop이 내 프로젝트에서 실행되고있는 것으로 나타났습니다. FxCop을 닫은 후 다시 컴파일 할 수있었습니다.


Temporary ASP.NET Files 폴더에서 파일을 삭제하는 웹 응용 프로그램이라면 해결책이 될 수 있습니다.


If you're using profilers like AQ Time, these may also be locking the file. The solution in this case would be to restart the profiler or simply unload/load the assembly in question from the profiler. For AQ Time I noticed that it's releasing the file after some time, but I can't for the life of me tell what that timeout is. Seems to be random


I also got same error today. I have resolved this issue by re-building the project.


I had this error caused by a 'more' vs file in question left running in another console. Oops.


My issue was also solved by sifting through the Process Explorer. However, the process I had to kill was the MySQL Notifier.exe that was still running after closing all VS and SQL applications.

참고URL : https://stackoverflow.com/questions/4658354/the-requested-operation-cannot-be-performed-on-a-file-with-a-user-mapped-section

반응형