Had to get to the bottom of this for a project. Heres the 20:
Clue - Win2k3 SP1 has a bug - anyway, this is the method.
1. get the files (listed in the bartpe plugin below)
2. dcom patch needs to be run for 2003 sp1 (like that in bartpe for winxp sp2.)
3. register vss_ps.dll manually (by autorun script or something.)
You need the patched versions of these files for the registration to occur correctly, as found in this kb:
http://support.microsoft.com/?kbid=910380As i dont have access to hotfixes, the answer was to perform the registrations myself in the bartpe plugin. No files from previous versions of W2k3 here, just the SP1 eval vers of windows 2003 sp1. So here it is:
CODE
[Version]
Signature= "$Windows NT$"
[PEBuilder]
Name="Diskpart functionality in Win2k3 - SP1 only"
; Assisted with this understanding was:
; http://support.microsoft.com/?kbid=910380
; http://technet2.microsoft.com/WindowsServer/en/Library/89c3a36a-d3e2-4462-8893-7a384b118c6b1033.mspx
; http://windowssdk.msdn.microsoft.com/library/default.asp?url=/library/en-us/vds/base/vds_interfaces.asp
Enable=1
[SourceDisksFiles]
Ftdisk.sys=4
Partmgr.sys=4
Volsnap.sys=4
Swprv.dll=2
Eventcls.dll=2
Vssadmin.exe=2
Vssapi.dll=2
Vssui.dll=2
Vssvc.exe=2
Vss_ps.dll=2
Diskpart.exe=2
[Default.AddReg]
; Runs dependent DLL registration for Application usage
; 0x1= REG_SZ
; 0x2= REG_EXPAND_SZ
; 0x1, "Software\Microsoft\Windows\CurrentVersion\Run", "DiskPartSupport", "%systemroot%\system32\regsvr32.exe /s %systemroot%\system32\vss_ps.dll"
; removed because the reg key is not read unless you use explorer as a shell.
[SetupReg.AddReg.3790]
; Win2k3 SP1 Only: RpcSS needs to lanuch DComLaunch Service first.
0x7, "ControlSet001\Services\RpcSs","DependOnService","DcomLaunch"
; New DComLaunch Service in Win2k3 SP1
0x1,"ControlSet001\Services\DcomLaunch","Description","DCOM Services"
0x1,"ControlSet001\Services\DcomLaunch","DisplayName","DCOM Services"
0x4,"ControlSet001\Services\DcomLaunch","ErrorControl",0x1
0x1,"ControlSet001\Services\DcomLaunch","Group","Event Log"
0x2,"ControlSet001\Services\DcomLaunch","ImagePath","svchost -k DcomLaunch"
0x1,"ControlSet001\Services\DcomLaunch","ObjectName","LocalSystem"
0x4,"ControlSet001\Services\DcomLaunch","Start",0x2
0x4,"ControlSet001\Services\DcomLaunch","Type",0x20
0x3,"ControlSet001\Services\DcomLaunch","FailureActions",\
00,00,00,00,00,00,00,00,00,00,00,00,01,00,00,00,00,00,00,00,02,00,00,00,60,\
ea,00,00
0x1,"ControlSet001\Services\DcomLaunch\Enum","0","Root\LEGACY_DCOMLAUNCH\0000"
0x4,"ControlSet001\Services\DcomLaunch\Enum","Count",0x1
0x4,"ControlSet001\Services\DcomLaunch\Enum","NextInstance",0x1
0x2,"ControlSet001\Services\DcomLaunch\Parameters","ServiceDll","rpcss.dll"
0x3,"ControlSet001\Services\DcomLaunch\Security","Security",\
01,00,14,80,b4,00,00,00,c0,00,00,00,14,00,00,00,34,00,00,00,02,00,20,00,01,\
00,00,00,02,80,18,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,00,00,20,02,\
00,00,02,00,80,00,05,00,00,00,00,03,18,00,8d,00,02,00,01,01,00,00,00,00,00,\
01,00,00,00,00,00,00,00,00,00,03,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,\
20,00,00,00,20,02,00,00,00,03,18,00,8f,00,02,00,01,02,00,00,00,00,00,05,20,\
00,00,00,23,02,00,00,00,03,18,00,9d,00,00,00,01,01,00,00,00,00,00,05,04,00,\
00,00,23,02,00,00,00,03,18,00,9d,00,00,00,01,02,00,00,00,00,00,05,20,00,00,\
00,21,02,00,00,01,01,00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,\
12,00,00,00
0x1,"ControlSet001\Enum\Root\LEGACY_DCOMLAUNCH\0000","Service","DcomLaunch"
0x4,"ControlSet001\Enum\Root\LEGACY_DCOMLAUNCH\0000","Legacy",0x1
0x4,"ControlSet001\Enum\Root\LEGACY_DCOMLAUNCH\0000","ConfigFlags",0x0
0x1,"ControlSet001\Enum\Root\LEGACY_DCOMLAUNCH\0000","Class","LegacyDriver"
0x1,"ControlSet001\Enum\Root\LEGACY_DCOMLAUNCH\0000","ClassGUID","{8ECC055D-047F-11D1-A537-0000F8753ED1}"
0x1,"ControlSet001\Enum\Root\LEGACY_DCOMLAUNCH\0000","DeviceDesc","DCOM Services."
0x1,"ControlSet001\Enum\Root\LEGACY_DCOMLAUNCH\0000\Control","ActiveService","DcomLaunch"
0x4,"ControlSet001\Enum\Root\LEGACY_DCOMLAUNCH","NextInstance",0x1
[Software.AddReg]
0x1,"Classes\CLSID\{E0393303-90D4-4A97-AB71-E9B671EE2729}",,"VDS ProxyStub"
0x2,"Classes\CLSID\{E0393303-90D4-4A97-AB71-E9B671EE2729}\InprocServer32",,"%SystemRoot%\System32\vds_ps.dll"
0x1,"Classes\CLSID\{E0393303-90D4-4A97-AB71-E9B671EE2729}\InprocServer32","ThreadingModel","Both"
0x1,"Classes\CLSID\{F2C2787D-95AB-40D4-942D-298F5F757874}",,"PSFactoryBuffer"
0x2,"Classes\CLSID\{F2C2787D-95AB-40D4-942D-298F5F757874}\InprocServer32",,"%SystemRoot%\System32\vds_ps.dll"
0x1,"Classes\CLSID\{F2C2787D-95AB-40D4-942D-298F5F757874}\InprocServer32","ThreadingModel","Both"
0x1,"Classes\Interface\{88306BB2-E71F-478C-86A2-79DA200A0F11}",,"IVdsVolume"
0x1,"Classes\Interface\{88306BB2-E71F-478C-86A2-79DA200A0F11}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{9882F547-CFC3-420B-9750-00DFBEC50662}",,"IVdsCreatePartitionEx"
0x1,"Classes\Interface\{9882F547-CFC3-420B-9750-00DFBEC50662}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{98F17BF3-9F33-4F12-8714-8B4075092C2E}",,"IVdsHwProviderPrivate"
0x1,"Classes\Interface\{98F17BF3-9F33-4F12-8714-8B4075092C2E}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{9AA58360-CE33-4F92-B658-ED24B14425B8}",,"IVdsSwProvider"
0x1,"Classes\Interface\{9AA58360-CE33-4F92-B658-ED24B14425B8}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{CB53D96E-DFFB-474A-A078-790D1E2BC082}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{D188E97D-85AA-4D33-ABC6-26299A10FFC1}",,"IVdsAdmin"
0x1,"Classes\Interface\{D188E97D-85AA-4D33-ABC6-26299A10FFC1}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{D5D23B6D-5A55-4492-9889-397A3C2D2DBC}",,"IVdsAsync"
0x1,"Classes\Interface\{D5D23B6D-5A55-4492-9889-397A3C2D2DBC}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{D99BDAAE-B13A-4178-9FDB-E27F16B4603E}",,"IVdsHwProvider"
0x1,"Classes\Interface\{D99BDAAE-B13A-4178-9FDB-E27F16B4603E}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{DAEBEEF3-8523-47ED-A2B9-05CECCE2A1AE}",,"IVdsMaintenance"
0x1,"Classes\Interface\{DAEBEEF3-8523-47ED-A2B9-05CECCE2A1AE}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{E0393303-90D4-4A97-AB71-E9B671EE2729}",,"IVdsServiceLoader"
0x1,"Classes\Interface\{E0393303-90D4-4A97-AB71-E9B671EE2729}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{9882F547-CFC3-420B-9750-00DFBEC50662}",,"IVdsCreatePartitionEx"
0x1,"Classes\Interface\{9882F547-CFC3-420B-9750-00DFBEC50662}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{E0393303-90D4-4A97-AB71-E9B671EE2729}",,"IVdsServiceLoader"
0x1,"Classes\Interface\{E0393303-90D4-4A97-AB71-E9B671EE2729}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{0EE1A790-5D2E-4ABB-8C99-C481E8BE2138}",,"IVdsLunPlex"
0x1,"Classes\Interface\{0EE1A790-5D2E-4ABB-8C99-C481E8BE2138}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{0EE1A790-5D2E-4ABB-8C99-C481E8BE2138}",,"IVdsLunPlex"
0x1,"Classes\Interface\{0EE1A790-5D2E-4ABB-8C99-C481E8BE2138}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{0818A8EF-9BA9-40D8-A6F9-E22833CC771E}",,"IVdsService"
0x1,"Classes\Interface\{0818A8EF-9BA9-40D8-A6F9-E22833CC771E}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{07E5C822-F00C-47A1-8FCE-B244DA56FD06}",,"IVdsDisk"
0x1,"Classes\Interface\{07E5C822-F00C-47A1-8FCE-B244DA56FD06}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{0316560B-5DB4-4ED9-BBB5-213436DDC0D9}",,"IVdsRemovable"
0x1,"Classes\Interface\{0316560B-5DB4-4ED9-BBB5-213436DDC0D9}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{3540A9C7-E60F-4111-A840-8BBA6C2C83D8}",,"IVdsLun"
0x1,"Classes\Interface\{3540A9C7-E60F-4111-A840-8BBA6C2C83D8}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{33B87426-5C06-49F4-84BD-F486B1B4A21D}",,"IVdsMigrateDisks"
0x1,"Classes\Interface\{33B87426-5C06-49F4-84BD-F486B1B4A21D}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{11F3CD41-B7E8-48FF-9472-9DFF018AA292}",,"IVdsProviderPrivate"
0x1,"Classes\Interface\{11F3CD41-B7E8-48FF-9472-9DFF018AA292}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{118610B7-8D94-4030-B5B8-500889788E4E}",,"IEnumVdsObject"
0x1,"Classes\Interface\{118610B7-8D94-4030-B5B8-500889788E4E}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{10C5E575-7984-4E81-A56B-431F5F92AE42}",,"IVdsProvider"
0x1,"Classes\Interface\{10C5E575-7984-4E81-A56B-431F5F92AE42}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{E882C452-CF37-482A-BBFF-E6EE614E8023}",,"IVdsSwProviderPrivate"
0x1,"Classes\Interface\{E882C452-CF37-482A-BBFF-E6EE614E8023}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{EE2D5DED-6236-4169-931D-B9778CE03DC6}",,"IVdsVolumeMF"
0x1,"Classes\Interface\{EE2D5DED-6236-4169-931D-B9778CE03DC6}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{FF24EFA4-AADE-4B6B-898B-EAA6A20887C7}",,"IVdsDrive"
0x1,"Classes\Interface\{FF24EFA4-AADE-4B6B-898B-EAA6A20887C7}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{3B69D7F5-9D94-4648-91CA-79939BA263BF}",,"IVdsPack"
0x1,"Classes\Interface\{3B69D7F5-9D94-4648-91CA-79939BA263BF}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{4AFC3636-DB01-4052-80C3-03BBCB8D3C69}",,"IVdsServiceInitialization"
0x1,"Classes\Interface\{4AFC3636-DB01-4052-80C3-03BBCB8D3C69}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{4DAA0135-E1D1-40F1-AAA5-3CC1E53221C3}",,"IVdsVolumePlex"
0x1,"Classes\Interface\{4DAA0135-E1D1-40F1-AAA5-3CC1E53221C3}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{54D1F9E3-7FD3-421A-AF9C-53C2D8EE5BCF}",,"IVdsOwnershipChangeQuery"
0x1,"Classes\Interface\{54D1F9E3-7FD3-421A-AF9C-53C2D8EE5BCF}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{6E6F6B40-977C-4069-BDDD-AC710059F8C0}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{6FCEE2D3-6D90-4F91-80E2-A5C7CAACA9D8}",,"IVdsSubSystem"
0x1,"Classes\Interface\{6FCEE2D3-6D90-4F91-80E2-A5C7CAACA9D8}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
0x1,"Classes\Interface\{8326CD1D-CF59-4936-B786-5EFC08798E25}",,"IVdsAdviseSink"
0x1,"Classes\Interface\{8326CD1D-CF59-4936-B786-5EFC08798E25}\ProxyStubClsid32",,"{E0393303-90D4-4A97-AB71-E9B671EE2729}"
I run bartpe from a RAM based SDI image, allowing me to change cd when i want after booting. also note that this means my systemdrive is writable. I havent tested this anywhere else, so if you dont have that, your results may vary. Actually, I'd be interested in knowing if this works for anyone else.
Any feedback appreciated, priate email pls: thor ATDOMAINNAME paradise POINT net POINT nz