Какая у вас заявка.Для VB6 имеется мастер для создания установщика: tools / Package and Deployment Wizard ).Для .Net существует тип проекта для генерации Установщиков: Другой тип проекта / Установщики Visual Studio / Мастер установки или Проект SetUp .
С другой стороны, для.Net можно использовать структуру System.SpecialFolder для перечисления специальных папок.
Используя Win32 API , вы можете использовать SHGetSpecialFolderPath :
// String buffer for holding the path.
TCHAR strPath[ MAX_PATH ];
// Get the special folder path.
SHGetSpecialFolderPath(
0, // Hwnd
strPath, // String buffer.
CSIDL_DESKTOPDIRECTORY, // CSLID of folder
FALSE ); // Create if doesn't exists?