リネームソフトを作成してるのですが分からないので質問します

例えば
d:\テスト\001
d:\テスト\001\002
d:\テスト\001\002\003

という3つのフォルダがあるときに、
003→001→002という順で4桁連番でリネームさせると
003が0001に001が0002となるのですが、
002は親フォルダ001が0002になってしまうことで
002のパスが
d:\テスト\001\002から
d:\テスト\0002\002となってしまいリネームできなくなってしまいます

d:\テスト\001\002のパスが変更されたことが事前に分かれば
リネーム処理をする前にd:\テスト\001\002をd:\テスト\0002\002に
変えてあげれるのですが、FindFirstChangeNotification APIを使っての
変更後パスの取得の仕方が分からないです

なにか良い方法はないでしょうか?