Как перекомпилировать программу c visual studio

Если вы думаете, что ваше WinForms .NET-приложение с самого начала безопасно и исходный код не может быть прочитан, то позвольте мне сказать вам, что ты не прав. Любой может использовать декомпилятор, который принимает исполняемый файл в качестве входных данных и пытается создать исходный файл высокого уровня (исходный код приложения). Перед публикацией приложения рекомендуется проверить уязвимости в коде, декомпилировав сгенерированный исполняемый файл с помощью некоторого инструмента декомпиляции. Помимо проверки возможных недостатков безопасности, если вы унаследовали приложение без документации или комментариев, посмотреть, как поведение кода компиляции с декомпилятором, может быть довольно полезно.

Если по какой-либо причине вы хотите декомпилировать сборки .NET, мы рекомендуем вам использовать Проект ILSpy. ILSpy — декомпилятор и работает так же Jadx (APK-декомпилятор) однако вместо декомпиляции Java декомпилирует C #. ILSpy — это браузер и декомпилятор сборки .NET с открытым исходным кодом. Наиболее известные особенности этого декомпилятора:

How to Create and Run C Program in Visual Studio

  • Просмотр сборки
  • IL разборка
  • Поддержка C # 5.0 «асинхронно»
  • Декомпиляция в C #
  • Поддерживает лямбды и «доходность»
  • Показывает XML документацию

В этой статье вы узнаете, как легко загрузить ILSpy на свой компьютер и декомпилировать исполняемый файл, сгенерированный Visual Studio, чтобы наконец увидеть его исходный код.

1. Скачать бинарники ILSpy

Официального установщика не существует, ILSpy переносим. Двоичные файлы ILSpy можно получить через релизы проекта в Github на область релизов или просто нажав кнопку Загрузить двоичные файлы с официального сайта здесь. В архиве содержатся до 11 файлов (1 исполняемый файл, 9 динамически подключаемых библиотек и файл конфигурации):

Бинарные файлы ILSpy в Windows

После загрузки вы можете использовать ILSpy через исполняемый файл, это не инструмент командной строки, поскольку он включает графический интерфейс.

Читайте также:
Программа которая обновляет Андроид версии

2. Декомпиляция исполняемых файлов из приложения WinForms

Не связывайтесь с этикой, мы собираемся декомпилировать одно из наших собственных приложений, созданных с помощью Visual Studio в C #. В нашем примере проекта мы представим наиболее небезопасную форму простой формы входа для уникального пользователя:

Форма небезопасного входа в систему

Модель учетных данных хранится в переменных в исходном коде, что, очевидно, является недостатком безопасности. С помощью оператора if мы проверим, знает ли пользователь учетные данные, когда пользователь нажимает кнопку входа в систему. Исходный код нашего приложения следующий:

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace Sandbox < public partial class Form1 : Form < public string globalUsername = «Batman»; public string globalPassword = «batmobil»; public Form1() < InitializeComponent(); >private void Form1_Load(object sender, EventArgs e) < >private void button1_Click(object sender, EventArgs e) < string username = textBox1.Text; string password = textBox2.Text; if(username == globalUsername password == globalPassword) < MessageBox.Show(«Login granted, awesome !»); >else < MessageBox.Show(«Login denied, check your credentials !»); >> > >

Теперь мы скомпилируем (создаем решение) наш проект, чтобы сгенерировать его двоичные файлы в bin/Debug папка проекта:

Как компилировать C/C++ в Visual Studio Code на Windows?

Построить проект решения Visual Studio

Проект решения для сборки обновит двоичные файлы отладки, и вы можете найти исполняемый файл вашего приложения в bin/Debug папка например C:UsersmeDocumentsvisual studio 2017Projects\binDebug , Откройте ILSpy, нажмите «Файл» в строке меню и выберите «Открыть». Запустится файловый браузер и позволит вам выбрать сборку, которая в этом примере будет находиться в папке Debug нашего проекта:

ILSpy выберите файл

Как только вы выберете исполняемый файл, ILSpy запустит процесс декомпиляции и добавит выбранный файл в качестве элемента в древовидном представлении. Там вы сможете изучить структуру и ресурсы файла и исходный код. В нашем примере у нас есть одна форма, а именно Form1, которую можно легко просмотреть через ILSpy:

ILSpy Читать исходный код приложения

Вы видите это правильно? ILSpy смог получить исходный код нашего исходного приложения и мы можем увидеть алгоритм «потрясающего входа» нашего проекта WinForms. Декомпиляция, очевидно, работает и с не отладочными версиями.

Читайте также:
На какой программе в мультиварке варить овощи для салата

Источник: helpexe.ru

Как перекомпилировать проект Microsoft Visual Studio?

Есть проект, нужно перекомпилировать под 32 разрядную систему, но в диспетчере конфигураций на выбор только х64 и х86.

Если перекомпилировать под х86, то будет ли проект запускаться на 32х разрядной Windows?

  • Вопрос задан более трёх лет назад
  • 1138 просмотров

Комментировать
Решения вопроса 2
Консультация и разработка мобильных приложений
Должен
x86 — 32х разрядная система
x64 — 64х разрядная система
Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать
Разработчик .NET
x86 — историческое название для 32-битной архитектуры.
Цитата из Википедии:

Название образовано от двух цифр, которыми заканчивались названия процессоров Intel ранних моделей — 8086, 80186, 80286 (i286), 80386 (i386), 80486 (i486). За время своего существования набор команд постоянно расширялся, сохраняя совместимость с предыдущими поколениями.

Помимо Intel архитектура также была реализована в процессорах других производителей: AMD, VIA, Transmeta, IDT и др. В настоящее время для 32-разрядной версии архитектуры существует ещё одно название — IA-32 (Intel Architecture — 32).

Ответ написан более трёх лет назад
Комментировать
Нравится 3 Комментировать
Ответы на вопрос 0
Ваш ответ на вопрос

Войдите, чтобы написать ответ

c#

  • C#
  • +2 ещё

Средства разработчика для Android?

  • 1 подписчик
  • 7 минут назад
  • 5 просмотров

Источник: qna.habr.com

как перекомпилировать .lib в Visual Studio 2013

У меня есть проект, который использует Effects11.lib и Effects11d.lib, но когда я создаю свой проект, я получаю кучу «ошибки LNK2038: обнаружено несоответствие для» __MSC_VER «: значение» 1600 «не соответствует значению» 1800 «. И из того, что я нашел, это говорит о том, что.lib был создан для другой версии VS, чем то, что я использую, и мне нужно перекомпилировать их. Проблема в том, что я не уверен, как это сделать. Никогда не приходилось перекомпилировать lib раньше.

Читайте также:
Либре офис это программа

Desenski 12 янв. 2015, в 05:36
Поделиться
Вы начинаете с исходного кода.
Ben Voigt 12 янв. 2015, в 04:35

Поделиться:

3 ответа

Лучший ответ

который затем ссылается на

который имеет загрузку для источника этой библиотеки в

который, как представляется, имеет файлы проектов, которые можно использовать с VS2013, которые вы используете, чтобы вы могли создавать эффекты.lib для vs2013 и продолжать свою разработку.

Альтернативу вы могли бы связаться с самим автором с его веб-страницы и посмотреть, сможет ли он сделать это для вас и связать с ним, поскольку, скорее всего, вы не единственный, кто попал в эту проблему?

Mike Vine 12 янв. 2015, в 10:41
Поделиться

Спасибо. Кажется, это исправило мою проблему. У меня есть только одна ошибка, которую нужно исправить, и, надеюсь, я смогу запустить свою программу.

Desenski 12 янв. 2015, в 19:34

Эти статические библиотеки построены с помощью VS 2010, но вы используете VS 2013. Ошибка ссылки сообщает об этом.

Исправление в этом случае — это посетить сайт Effects 11 на CodePlex, а затем создать новую копию Effects 11 с вашим компилятором VS 2013. Кроме того, вы можете использовать пакет NuGet fx11_desktop_2013, который является той же версией, созданной для VS 2013.

Обратите внимание, что при использовании VS 2013, который включает в себя SDK Windows 8.1 с несколько устаревшей книгой Luna, вы можете попытаться использовать устаревшую библиотеку D3DX11. Вы, безусловно, можете сделать это с VS 2013 года, но вам нужно внести некоторые изменения в проект include/lib paths, чтобы заставить его работать. См. MSDN. Библиотека библиотеки Effects 11 от CodePlex или NuGet не имеет никаких зависимостей от устаревшего SDK DirectX.

У меня есть некоторые общие замечания об этой книге здесь также.

Полный список альтернатив D3DX11 см. В разделе » Жизнь без D3DX».

Источник: overcoder.net

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru