Windows 폴더에서 dll 이름 바꾸기

Windows 폴더에서 dll 이름 바꾸기

이 파일의 다른 버전으로 바꾸려면 내 Windows 7 시스템에서 특정 dll(정확하게는 comctl32.dll)의 이름을 바꿔야 합니다.

나는 시도했다:

  1. [아래: 마우스 오른쪽 버튼 클릭, 속성, 보안, 권한, 고급, 소유자]는 소유자를 현재 사용자로 변경했으며 [아래: 마우스 오른쪽 버튼 클릭, 보안]은 현재 사용자에게 가능한 모든 권한을 부여했습니다. [마우스 오른쪽 버튼 클릭, 이름 바꾸기]를 시도했지만 이름을 바꿀 수 없어 액세스가 거부되었습니다.
  2. 관리자 cmd(상승된 권한)를 시작하고 강제를 사용했습니다.

    takeown /f comctl32.dll
    icacls "comctl32.dll" /grant (current user):F
    rename comctl32.dll comctl32.old 
    

    허가가 거부되었습니다.

  3. 그게 나를 화나게 해서 시스템 사용자로 쉘을 시작하고([1]에 설명된 단계에 따라) rename comctl32.dll comctl32.old이 쉘에서 사용하여 파일 이름을 바꾸려고 했습니다. 다시 권한이 거부되었습니다.

나는 시스템 쉘이 나에게 기본적으로 신 모드를 제공한다고 생각했는데, 이것은 꽤 당황스럽습니다! 이 파일의 이름을 바꾸는 방법이나 액세스를 거부하는 방법에 대한 추가 제안을 받은 사람이 있습니까? 나는 완전히 헤매고 있다!

[1]http://blogs.technet.com/b/askds/archive/2008/10/22/getting-a-cmd-prompt-as-system-in-windows-vista-and-windows-server-2008.aspx

//편집:
이제 Unlocker 도구도 사용해 보았습니다. 파일 이름을 바꿀 수는 없었지만 재부팅 후에 시도해 보겠다고 약속했습니다. 시스템을 재부팅했는데 오랜 친구가 아직 이름을 바꾸지 않았습니다.

//편집 2:
반대표와 댓글을 바탕으로 동일한 질문을 가진 동료 사용자에게 경고 한 줄을 추가하고 싶습니다. 무엇을, 왜 하는지 아는 경우에만 이 작업을 수행하십시오. 그렇지 않으면 시스템이 충돌할 수 있습니다.
사실 저는 제가 무엇을 하는지 알고 있습니다. 이미 손상된 파일을 교체해야 합니다. 내가 모르는 것은 그것을하는 방법입니다. 따라서 여기서 위험을 언급하거나 질문에 반대표를 던질 필요가 없습니다.~할 것 같다시스템 무결성에 위험할 수 있습니다. 실제로 시스템을 사용하는 것만으로도 결국 시스템의 무결성이 위험해집니다. 동일한 자산에 대해 정당한 질문을 처벌하는 이유는 무엇입니까?

답변1

Windows 자체가 이를 사용하여 작동하기 때문에 권한에 관계없이 이에 액세스할 수 없습니다.

다른 OS(예: Linux LiveCD 또는 Windows 설치 디스크)에서 부팅하고 이름을 바꿉니다.

경고: 이것은 정말 나쁜 생각이며 Windows가 부팅되지 않을 수도 있습니다. 먼저 전체 백업을 만드십시오.

답변2

파일이 커널에서 사용 중인 경우 먼저 메모리에서 언로드하지 않고는 이름을 바꿀 수 없습니다. 예를 들어 Windows 복구 콘솔을 사용하여 이름을 바꿉니다.

프로세스에서 사용되지 않는 경우 이름을 바꿀 수 있지만 Windows 파일 보호에서는 원래 이름으로 복사본을 만들거나 다시 이름을 바꿀 수 있습니다.

Windows 파일 보호를 부분적으로 비활성화하는 가장 빠른 방법은 다음 파일을 삭제해야 합니다.

C:/windows/system32/restore/filelist.xml

이름을 바꾸려는 파일을 먼저 백업하기 위해 OS를 테스트 설치하지 않는 한 Windows CD의 바이너리 파일에서 확장할 수도 있습니다.

expand -r filename.dl_ C:/windows/system32

이렇게 하면 system32에 filename.dll이 생성됩니다. 분명히 filename을 dll의 파일 이름으로 바꿔야 합니다.

대안으로 debug.exe를 사용하여 Windows 파일 보호를 비활성화할 수 있지만 이는 훨씬 더 위험하며 약 30분 정도 걸립니다.

관련 정보