2013-06-25 3 views
0

Я хочу создать проект: приложение для автоматизации документов Microsoft Office Word, которое должно изменить готовые шаблоны.Visual C++ Win32 или MFC C++?

Я хочу, чтобы вы помогли с этим проектом, чтобы предоставить мне отправную точку.

Какой я должен выбрать среди WIN32 C++ или MFC C++? Какую библиотеку я должен использовать? и последнее, нужна ли библиотеке Microsoft Office для установки на компьютере, на котором работают мои приложения? Я знаю, что у моего вопроса больше ответов, но, пожалуйста, помогите мне в этом, я хочу попрактиковаться, и мне нужно хорошее начало.

Заранее благодарен! P.S. Я хочу, чтобы мое приложение запускалось в Windows 7 и создавало файлы DOCX.

+2

Вам нужно использовать _plain_ C++ для этого? Для целей автоматизации Word платформа .NET, похоже, подходит для этого. –

ответ

5

Какой я должен выбирать среди WIN32 C++ или MFC C++?

Любой из них в порядке. Тем не менее, MFC сделает вашу работу намного проще, и вы можете закончить быстрее. Вам придется писать больше кода самостоятельно, если вы используете raw win32 api.

Какую библиотеку я должен использовать?

Google Word Automation C++ или Word Automation MFC. С MFC используйте генератор ClassWizard, см. instructions here или для необработанных winapi см. Статью this CodeProject для стартеров.

Будет ли эта библиотека нужна Microsoft Office для установки на машине Мои приложения работают?

Для автоматизации слова, да. В противном случае вам понадобится библиотека C++, которая понимает файлы docx. Я не знаю решения, но знаю docx document is a Zip archive in OpenXML format (reference). Вы можете попробовать расстегнуть его и работать оттуда или посмотреть libOPC, который, кажется, обеспечивает это (но я не знаю особенностей и насколько это было бы сложно). Я нашел Where is the documentation for Office's docx/xlsx/pptx formats, если вы хотите больше посмотреть в формат файла.

(Также, как отмечено в комментариях, C# облегчит вам жизнь (если вы действительно не хотите придерживаться C++)).

+0

SyncFusion имеет библиотеку для Office, но это библиотека .Net. –

+0

Я уже сделал это приложение на C#, но я хочу попрактиковаться в своем C++, потому что хочу написать собственный код Windows. – Victor

0

Если ваше приложение будет иметь существенный графический интерфейс, тогда MFC - хороший выбор. Но библиотека ATL намного лучше подходит для работы с COM-интерфейсами (и весь интерфейс для приложений Office использует COM) и имеет гораздо меньше накладных расходов, чем MFC. Поиск MSDN для «образцов ATL».