Вы можете сохранить имена файлов из каталога в управляемом массиве следующим образом:
System::String ^path = "c:\\";
cli::array<System::String ^>^ a = System::IO::Directory::GetFiles(path);
Console::WriteLine(a[0]);
Console::ReadKey();
Что касается того, как бы вы скопировали всю папку ... Просто выполните рекурсию из заданного корневого каталога, создав каждый каталог и скопировав файлы в новое место. Если вы запрашиваете код для этого, то, пожалуйста, скажите об этом, но, по крайней мере, сначала попытайтесь выяснить это сами (т.е. покажите, что у вас есть).