Создание библиотеки Windows на C++ в Windows7 с использованием Windows10SDK
Я немного заржавел, когда дело доходит до создания.lib и.DLLs, поэтому прошу прощения за мое незнание некоторых деталей, но вот мой вопрос.
Я делаю (Universal Windows) библиотеку в C++, используя Visual Studio и Windows 7. Библиотека имеет простые удобные функции для выполнения таких вещей, как подстрока, индекс и т. Д.
Одна из этих функций требует использования Windows 10 SDK, а именно:
StorageFolder* appFolder = Windows::ApplicationModel::Package::Current->InstalledLocation;
create_task(appFolder->GetFilesAsync()).then([=](IVectorView<StorageFile*>* filesInFolder)
{
//Iterate over the results and print the list of files
// to the visual studio output window
for (auto it = filesInFolder->First(); it->HasCurrent; it->MoveNext())
{
StorageFile* file = it->Current;
String* output = file->Name + "\n";
OutputDebugString(output->Begin());
}
});
Мой вопрос: как мне сделать эту библиотеку максимально совместимой и, что более важно, как заставить ее работать? Я понимаю, что использую Windows7, и эти классы доступны только в Windows10, поэтому я предполагаю, что я установлю Windows10 SDK и включу его в свой проект lib, но он все еще не может найти StorageFolder. Это единственный вариант для меня, чтобы перейти на Windows10? Может ли моя библиотека все еще работать, если пользователь использует ее в Windows7?
1 ответ
Этот API, который вы используете, не будет работать на Windows 7 или Vista или любой другой ранее. Но совет состоит в том, чтобы сделать ваш код максимально пригодным для повторного использования и использовать его для создания универсального приложения для Windows и программы для Windows 7.
фактически любой новый API для windows 10 не будет работать на windows 7 ("злой план Microsoft заставить разработчиков и людей переключиться на windows 10"), я надеюсь, что вы найдете решение. мое почтение.