WinSDK 7.1: Начало работы с Windows SDK Tools для разработки собственных приложений Windows? - PullRequest
3 голосов
/ 19 февраля 2012

Я наконец смог успешно установить инструменты Windows SDK (v.7.1) в моей системе Windows Vista.У меня уже был установлен компилятор GCC, и это то, что я сейчас использую для компиляции кода C.

Где найти документацию для WinSDK и как мне включить ее в GCC?

Я не смог найти никаких объяснений в примечаниях к выпуску или что-то еще.Однако, если вы можете найти что-то, что объясняет это, не стесняйтесь дать мне ссылку.

1 Ответ

5 голосов
/ 19 февраля 2012

Это может показаться вам странным, но вам не нужно было загружать отдельный Windows SDK для разработки для Windows, потому что Visual Studio, MingW / GCC и другие, как правило, уже включают в себя все, что нужно большинству людей. (Некоторые люди скажут, что Visual Studio и другие инструменты поставляются с собственной версией SDK, но я думаю, что это еще больше запутывает проблему.)

Сначала вам понадобится Visual Studio. И, может быть, когда-нибудь вы захотите добавить к нему дополнение Windows SDK, но оно не предназначено для использования само по себе или в сочетании с GCC. В основном, часть содержимого SDK дублирует материал, который уже включен в Visual C ++ и Visual Studio, а некоторые из них - дополнительные инструменты, такие как WinDbg .

Позвольте мне объяснить. Windows SDK действительно полезен для выполнения определенных задач в Windows, которые новичкам вряд ли понадобятся. Например, если вам нужно интегрироваться с некоторыми специализированными API, Windows SDK содержит много документации, примеров и более полный набор заголовочных файлов, которые не были включены в Visual Studio, поскольку они менее часто используются API. Основные заголовки API и документация для Windows уже находятся в Visual Studio, поэтому технически Visual Studio уже содержит основной SDK, а так называемый SDK представляет собой «вспомогательный SDK» или «низкоуровневый SDK для пуристов, опытных пользователей и определенные виды систем или программирования на «родном уровне», но не нужны для разработки наиболее типичных приложений для конечных пользователей.

Но если вы хотите изучить нативное программирование на Win32 с использованием C или C ++ или просто хотите писать нативные приложения для Windows, вам НАДЕЖНО не нужно ничего, что входит в SDK, и даже тогда вам сначала понадобится Visual Studio, и SDK второй. Позвольте мне объяснить:

  1. Многие инструменты, которые позволяют писать чистые собственные приложения Windows, предоставляют API более высокого уровня, включая Visual Studio, которая предоставляет вам MFC или ATL. Ни одному из этих инструментов не нужен SDK для работы. Так называемый SDK - это скорее «лишнее дерьмо, которое мы не поставляем вместе с visual studio, потому что оно вряд ли кому-то нужно», которое Microsoft сокращенно называет SDK. Я знаю. Weird.

  2. Вам вообще не нужен SDK, если вы собираетесь использовать GCC. Если вы хотите написать приложение для Windows на голом C или голом C ++, вы можете просто установить mingw, если вы настаиваете на использовании gcc и работе из командной строки.

  3. Обычный способ написания собственных приложений - это использование бесплатной версии Microsoft Visual C ++ Express, и вы можете использовать ее для написания приложений на C или C ++, включая файлы заголовков и библиотеки, которые вам нужно написать практически любая необходимая вам функция Windows, без SDK. Visual Studio - это хорошая современная среда IDE и множество удобных интересных функций, таких как завершение кода и так далее. SDK, который вы скачали, не содержит ничего из этого.

  4. Все, что вам нужно знать о сырых API Win32, вы можете узнать, используя веб-формат документации MSDN или справку в Visual Studio. Основные API-интерфейсы Windows, такие как WinCreateWindow, уже описаны в справке Visual Studio и справке MSDN, и вам не нужны документы SDK для большинства основных API-интерфейсов Windows.

Если вы только начинаете, могу ли я предложить вам получить бесплатную (но не с открытым исходным кодом) Visual Studio 2010 Express. Это рекомендуемый способ начать, а не SDK.

Я совершенно уверен, что загруженный вами SDK для Windows 7 в любом случае не предназначен для использования с GCC, и если вам нужна версия заголовочных файлов Windows, которые работают с компилятором Gnu C / C ++, любые базовые API-интерфейсы Win32, такие как GDI и базовый интерфейс Windowing API уже включены в mingw версию gcc.

Возможно, вы также захотите узнать о DDK, который похож на SDK, но ориентирован на разработку драйвера устройства и собственного режима NT.

...