2016-01-21 6 views
0

Есть ли способ выяснить, какая архитектура реализует приложение?, определяющий архитектуру приложения

Я пытаюсь выяснить, используется ли Win32, WPF или Windows Form сторонним приложением.

Спасибо за помощь

+0

Есть ли какая-то конкретная причина, по которой вам нужна эта информация? Это трудный вопрос для ответа. – andlabs

+1

Я не думаю, что это эксклюзивный выбор. Приложение может использовать их комбинацию. –

+0

Приложение, использующее WPF и/или Windows Forms, будет ** всегда ** звонить в Win32 API. Аналогичным образом, чистое родное приложение Win32 может размещать среду CLR с использованием [собственных хостинговых средств] (https://msdn.microsoft.com/en-us/library/9x0wh2z3.aspx). Предполагая, что эти 3 платформы взаимоисключающие приводят к необходимости чего-то, этого не существует. Если вы не объясните, почему вы думаете, что вам нужно знать, вы не можете надеяться получить много полезной обратной связи. – IInspectable

ответ

1

Вы можете посмотреть на EXEs и библиотек DLL приложения, например, используя ILSpy.

WPF и WinForms насколько я знаю, ограничивается платформой .NET. Поэтому, если это не .NET-EXE, а ILSpy не анализирует его, это, вероятно, Win32.

Если это .Net EXE, посмотрите ссылки. Если ссылаются только конкретные DLL-файлы WPF, это, вероятно, WPF. Если только WinForms специфичные DLL, вероятно, WinForms. Если и то и другое, вам нужно проследить программу, начиная с основного метода, чтобы найти доказательства, которые используются API.

Но в любом случае это не является убедительным доказательством. Оба API могут быть смешаны, и может быть Windows или Elements каждого из них. Поскольку WinForms является оболочкой собственного API Win32, всякий раз, когда вы используете WinForms, вы также используете Win32 API.

Так что это, вероятно, зависит от того, что вам конкретно нужно знать.

+0

Спасибо, это решило! – ColdZer0

Смежные вопросы