Вариант 1: использовать приложение Visio программно
Любой язык .NET может управлять Visio через свои интерфейсы автоматизации COM и использовать метод SaveAs.
mydoc.SaveAs("d:\\foo.vdx");
Метод SaveAs в MSDN
Эта опция, очевидно, требует установки приложения Visio.
Вариант 2. Использование сторонней библиотеки
Я никогда не использовал ее, но, очевидно, Aspose.Diagram для .NET может использоваться для преобразования этих файлов.
Библиотека Microsoft?
Чтобы ответить на ваш последний вопрос: Нет, Microsoft не предоставляет библиотеку C / C ++ для выполнения этого преобразования.