2010-05-04 6 views
1

Windows 7에서 볼륨 C와 연결된 디스크의 주 파티션을 열거 할 수있는 C#으로 작은 유틸리티/클래스 라이브러리를 작성하고 싶습니다. 해당 디스크의 주 파티션 중 하나에 대한 활성 플래그. 나는 관리 코드 (C#)에서이 라이브러리를 "소비"하고 싶습니다. 내가 이해하는 한, http://msdn.microsoft.com/en-us/library/bb986750(v=VS.85).aspx에 설명 된 가상 디스크 서비스를 사용해야합니다.COM Interop을 사용하여 C#에서 가상 디스크 서비스 API 프로그래밍

Windows 2008의 경우이 API에 대해 "기본 interop 어셈블리"와 비슷한 것으로 보입니다 : Windows.Storage.Vds.dll (http://blogs.msdn.com/taylorb/archive/2008/09/19/using-the-virtual-disk-service-vds-from-powershell-to-mount-and-use-vhd-s.aspx 참조). Windows 7에서이 파일을 찾을 수 없습니다. 존재합니까? 그렇다면 어떻게 얻을 수 있습니까? 나는 그것을 찾을 수 없기 때문에 공개적으로 이용 가능하지 않다.

이 tlbimp 사용이 코드를 생성하려면 다음 단계는 것이지만, VDS는 형식 라이브러리를 내 보내지 않습니다. 사실입니까? 나는 그것을 발견 할 수 없다.

위의 예제 라인을 따라 C++에서 "손으로"COM 작업을 직접 수행 할 수 있습니다. 이 예제는 작동하지만 사실상 이해하기 어렵습니다. 마찬가지로 http://msdn.microsoft.com/en-us/library/aa645736(VS.71).aspx에 설명 된 기술을 사용하여 midl에서 직접 클라이언트 어셈블리를 만들 수 있습니다. 하지만 합리적인 방법으로이 작업을 수행하기에는 COM/COM Interop/VDS가 충분하지 않습니다.

VDS dcom 클라이언트 API는 가상 사용할 수 없으므로 모든 사람이 diskpart.exe 스크립팅을 종료합니다. 확실히 나는 이것에 대해 틀렸다.

+0

crowdsourcing은 어떨까요? 누구가 더 많은 것을 찾을 수 있는지 말해 줄 수 있습니까? 몇 가지 Windows 포럼에 게시했지만 거기에도 침묵이 있습니다. 누군가는 이것을하는 방법을 압니다. 감사. – mcarifio

답변

1

몇 가지 정보가 나와있는 경우 SO entry을 참조하십시오.