Richard said:
Well, I spoke to soon. After letting Win7 write the disk sets a bit, I
booted back into XP 32 bit, and Arggghhhh! It showed the disk sets as
"inactive" (not "foreign") Trying to reactivate failed with the same "no
configuration copy can be found" error message. And XP 64-bit continues to
have no problem.
Changing the driver did "help". XP 32 bit was able to reimport
what it now saw as foreign disks. With the old driver it couldn't do that.
But still Win7 makes some changes that it still can't handle. :sigh:
It has no problems with basic disks between them. Depending on if I
feel like it, I might try a different EIDE card and see if that fixes it. Or
I might just recreate the partitions as regular ones on basic disks. Or just
forget about Win 7.
There are a couple things down at the end of the device. There
would be the 1MB database used by the dynamic disk.
There is also the 64KB or smaller metadata used by a RAID
controller, to keep track of disks in an array. There are normally
mechanisms in place to prevent collision. On my RAID controller,
the controller indicates the disk is smaller than it really is, so
that writes to the data portion of the disk, can't touch the
metadata area. The driver is responsible for enforcing this. If
I move my disk to another controller, or change to a non-RAID driver,
I may be able to examine the RAID metadata. I've done that
with my controller, and found a 4KB chunk with 16 data structures
in it. That is the metadata that keeps track of RAID arrays. That
gets written during array setup.
I don't have a "disk editor". Instead, what I do, is use a port of "dd"
to be able to copy small regions from the disk. And then, examine the
resulting small file with a hex editor. My hex editor won't examine anything
larger than 2GB in size, so I have no choice but to "think small".
http://www.chrysocome.net/dd
The command "dd --list" tells me my test disk is 33554432 sectors long.
If I issue a command like this, this copies 16MB from the very end of
the device. I picked that size, as a cylinder is 8MB, and I wanted to
make sure no matter how bad my math, that I got a snapshot of the
1MB dynamic disk database. So I decided to snapshot two cylinders
worth, to cover that area. (In fake geometry terms, a cylinder is
255 heads and 63 sectors, 512 bytes per sector, giving about 8MB or so.)
dd if=\\?\Device\Harddisk2\Partition0 of=big.bin skip=33521664
The "skip" option starts the copy operation near the end of the raw disk.
33554432 - 33521664 = 32768 sectors, times 512bytes = 16MB of data.
The "big.bin" file ends up with that data. I use a hex editor on
that, to find the 1MB dynamic disk database. It is pretty sparsely
occupied, since I have a simple volume with one partition. It didn't
seem to be butted up against the end of that space, and I think I
had maybe 350,000 bytes empty at the end.
So that is an example of a tool you can use, when you can't afford
a sector level disk editor. Maybe you can take a snapshot down near
the end before and after the corruption occurs. Then compare them,
and figure out what changed.
("dd" runs from the Command Prompt, so you type that stuff into
the Command Prompt window.)
Paul