Пытаюсь запинать софтину, заточенную под десяточные API, под более младшие версии. Оно хочет несколько разных api-ms-*.dll, которые я в таких случаях добываю из каталогов downlevel. А эта хочет, в частности, api-ms-win-core-winrt-string-l1-1-0.dll, которой я в десятках не нахожу. И все бы ничего (некоторые DLL транслируются через реестр), так я ее и там не нахожу.

А софтина, тем не менее, работает.
Каким образом система обрабатывает импорты из подобных DLL?
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Пытаюсь запинать софтину, заточенную под десяточные API, под более младшие версии. Оно хочет несколько разных api-ms-*.dll, которые я в таких случаях добываю из каталогов downlevel. А эта хочет, в частности, api-ms-win-core-winrt-string-l1-1-0.dll, которой я в десятках не нахожу. И все бы ничего (некоторые DLL транслируются через реестр), так я ее и там не нахожу.
А софтина, тем не менее, работает.
ЕМ>Каким образом система обрабатывает импорты из подобных DLL?
Ета ебель обрабатывается на уровне загрузчика. Можно победить только собрав свою заглушку ms-win-core-winrt-string-l1-1-0.dll. Но winrt без 10-ки не заведётся.
Вообще весь этот геморой призван только к одной цели, что бы новое по не могло пускаться на старых ос. Собирайте без этого чудного runtime-а от M$.
Здравствуйте, kov_serg, Вы писали:
_>Ета ебель обрабатывается на уровне загрузчика. Можно победить только собрав свою заглушку ms-win-core-winrt-string-l1-1-0.dll. Но winrt без 10-ки не заведётся.
Судя по структуре, там от WinRT используется только IJsonValueStatics. В 8.1 это чудо таки работает.
_>Вообще весь этот геморой призван только к одной цели, что бы новое по не могло пускаться на старых ос.
Ну, в данном случае у них было основание привязаться к версии.
Собирайте без этого чудного runtime-а от M$.
_>Так это не моё — это утилита usbview2 из SDK 10.0.22621. В SDK/WDK/WinDbg почти все EXE/DLL требуют соответствующей версии системы, но после исправления заголовка большинство прекрасно работает в семерке, а многие — и в XP. А тут вот нашла коса на камень.
Здравствуйте, Евгений Музыченко, Вы писали:
ЕМ>Собирайте без этого чудного runtime-а от M$.
_>>Так это не моё — это утилита usbview2 из SDK 10.0.22621. В SDK/WDK/WinDbg почти все EXE/DLL требуют соответствующей версии системы, но после исправления заголовка большинство прекрасно работает в семерке, а многие — и в XP. А тут вот нашла коса на камень.
Эта ?
https://github.com/TMSL/USBView-VS17
Здравствуйте, kov_serg, Вы писали:
_>Эта ? https://github.com/TMSL/USBView-VS17
Не, это старая usbview, которая по умолчанию гуйная (хотя умеет выводить и в консоль). usbview2 появилась только в последнем SDK, она уже чисто консольная, и вместо XML умеет HTML и JSON.
Я пока не понял, действительно ли она мне нужна — вдруг научилась расшифровывать какие-то параметры лучше, чем старая версия. Но адаптировать под ранние системы смысла нет — всегда можно подключить нужное устройство к VM с восьмеркой-десяткой.