Программирование на C++

10 способов прострелить себе ногу

Создание веб приложений

В инете столько порнухи, что создается впечатление, что каждая женщина на Земле хотя бы раз в ней снималась...

Подпись для третьего не придумал

Американец изнасиловал лошадь, потому что думал, что у них родится кентавр

Помощь обездоленным якутам на дальнем севере

Благотворительность (на правах рекламы)

Показаны сообщения с ярлыком Visual Studio. Показать все сообщения
Показаны сообщения с ярлыком Visual Studio. Показать все сообщения

среда, 20 февраля 2013 г.

Установка библиотек Qt (кьют) для VS2010 и VS2012


Сегодня я расскажу как установить библиотеку 4.8.4. версии (и 5.0) под Visual Studio 2010 и VS2012. Хочу сказать, что вышла библиотека под версией 5 и ее установка аналогична для версии 4.8.4.
Итак, что на требуется, это:

  1. Visual Studio 2010 или 2012 msdn можно скачать на рутрекере или Dreamspark
  2. Qt 4.8.4 или 5.0 : 4.8.4 и 5.0
  3. Qt Add-In : qt Add-In для 4   qt Add-In для 5
Когда скачиваем Qt 4.8.4 (5.0) мы можем выбрать либо Windows (VS2010) или скачать .zip. .zip скачиваем только в том случае, если вы хотите сконфигурировать библиотеку под свои нужды.   Мы выберем легкий путь и установим через Qt Add-In. Если мы устанавливаем для VS2012, То также скачиваем Windows VS2010, но только другой qt Add-In для 5 ой версии!!
Если мы выбрали вариант Qt .zip то, при установке путь не меняем, пусть будет C:\Qt\  Так будет проще.
Далее устанавливаем Qt Add-In. Все, готово. Запускаем Visual-Studio 2010 и можно увидеть, что сверху появилась вкладка Qt.

понедельник, 21 января 2013 г.

Обфускация С# кода средствами VS2010

Обфускация (Obfuscation) - способ защиты исходного кода при котором недоступен анализ кода, понимание алгоритмов содержащихся в коде и модификация кода при декомпиляции.
Проще говоря, это затрудняет реверс-инжиниринг. При такой защите сохраняется полная функциональность программы.
Обфускацию проводят специальные программы - обфускаторы. Один из них -

Dotfuscator Software Services, который встроен в VS2010.

Допустим, у нас есть какой то проект, возьмем мой - FormulaToTruthTable. Для того, чтобы начать, зайдем в Tools->Dotfuscator Software Services. 

Вылезет окошко с лицензией. Тщательно читаем еврейским методом и принимаем лицензию. После нескольких минут раздумываний появится окошко дотфускатора:
Программа содержит:
  • Дерево навигации (слева от синего окошка)
  • Рабочее поле (синее окошко)
  • И Build Output (там появляется информация во время построения кода)
Теперь правой клавишей по Dotfuscator1->Add Assemblies. Добавляем все .exe .dll файлы из проекта. В моем случае у меня 2 файла (выберите Input Assemblies в дереве для просмотра):
Далее выберем нужные нам свойства:
  • Honor instrumentation attributes - выбрав галочку, дотфускатор трансформирует все функциональные аттрибуты (к-ые влияют на юзабильность, функциональность программы). Они описаны здесь : msdn
  • Honor obfuscation attributes - для того, чтобы производилось обфусцирование с помощью специальных аттрибутов.
  • Library mode - говорит дотфускатору, что входная сборка является библиотекой.
  • Strip obfuscation attributes - (Strip - снимать (engl)) - снимает аттрибуты запутывания, т.е. не будут видны аттрибты обфусцирования, таким образом над методами не будут красоваться: [Obfuscation(Feature = "trigger", ApplyToMembers = true, Exclude = false)]
Я выбрал вот так:
Вообще дальше лучше ничего не менять, а то напортачите :D, так что сразу нажимайте Build->Build Project. После некоторого времени, В блоге появится вот такая статистика:
Build Finished.
Build Statistics    Total  Renamed  Percent Renamed
Types:                 10        6           60,00%
Methods:               67       58           86,57%
Fields:                34       33           97,06%
Это означает, что построение завершено. В папке Папка вашего проекта\obj\x86\Debug\Dotfuscated появится exe и все ваши dll файлы. Все ваши файлы обфусцированы и при запуске .exe все должно работать.
Результат в папке:

воскресенье, 6 января 2013 г.

Установка и настройка библиотеки boost (C++) на VS 2010


Boost libraries - библиотеки которые расширяют еще больше функциональность C++. Boost библиотека в наше время незаменима, так как в ней есть библиотеки, которые очень часто применяются сейчас в программировании приложений и в ней есть библиотеки, которых нету в стандартном перечне библиотек С++.
Прежде чем мы начнем, надо скачать библиотеки с сайта:
Ссылка на архив: boost .zip - это версия 1.52, если вы хотите более новой версии, то на главной, где есть Current Releases и там будет показано, какая новая версия уже доступна.
Вот еще другой способ скачать:

  1. Заходим на главную boost.org
  2. Справа будет красная кнопка Get Boost , нажимаем по ней
     3. Далее нажимаем по ссылке Download
      4. Далее нас перебросят на страницу где можно будет скачать архив.

Итак, преположим, что все скачано. Распаковываем архив.
Теперь открываем Пуск->Все Программы->Microsoft Visual Studio->Visual Studio Tools->Visual Studio Command Prompt (2010).
ИЛИ Ищем в директории вот такой батник:
vcvarsall.bat
Появилась командная строка для VC2010. Пишем туда (Метка диска где вы распаковали архив, для меня это диск D, вот какую строку я написал "D:")
Появилась метка тома D:\>
пишем туда: "cd <папка где лежит папка boost_1_52_0>", в моем случае она лежит по пути D:\libraries, поэтому в моем случае я введу "cd libraries"
Теперь введем имя папки cd boost_1_52_0 в вашем случае это будет папка где будет лежать bootstrap.bat
Теперь запустим тот самый батник bootstrap.bat, начнется построение exe файла bjam.exe. BJam- система построения boost'а. Он предназначен для построения С++ проектов. Пишет, что идет построение (building) и нужно подождать некоторое время пока закончится процесс.
Все! Процесс закончился. В папке boost_*_**_* появился bjam.exe. И в консоли выходит информация, что построение закончилось.
Не запускайте пока что его. Можно с помощью командной строки построить все скачанные библиотеки boost с помощью bjam. Напишем вот такую магическую строчку:
"bjam toolset=msvc link=static threading=multi release stage"
Сначала релизим статическую библиотеку(20 min :) )
Потом дебажим
"bjam toolset=msvc link=static threading=multi debug stage"
Все. теперь все скомпилировано. Теперь нам надо настроить VS2010, для того, чтобы он видел  где находятся эти файлы.
Запустим VS2010, запустим любой C++ проект. Включим Property Manager. View->Property Manager, там выберем во вкладке Debug Microsoft.Cpp.<Platform>.user, правая клавиша->Properties
Далее выберем там VC Directories. Include Directories->Edit. Появилось окно Include Directories
Теперь инклюдим наши библиотеки. Ищем путь к распакованному архиву.
Теперь также делаем и для Library Directories (только папку выбираем уже libs)
Видно, что при подключении файла из папки, VS2010 не выводит ошибок.
Все получилось, все компилится, всем спасибо за внимание! :)


среда, 5 декабря 2012 г.

Создание установщика для консольного приложения в vs 2010

Собственно, наступило время, когда приходится писать не простые вузовские лабораторные по программированию, а приложению рассчитанные на пользователя.
Одна из важнейших вещей - это развертывание приложения. Можно сделать это по разному : с помощью WinRar'a, обычный перенос файлов на жесткий диск и так далее. Но многим удобнее использовать обычный установщик, например формата msi, так как не каждый имеет на компьютере WinRar (да-да, странно в наши дни), а в другом способе может быть очень много файлов, что в некоторых случаях неудобно переносить на компьютер, поэтому установщик очень удобен и в этой статье я расскажу как его создать.
Для примера создам простейший Console application project (имя проекта HelloWorld) с файлом HelloWorld.cpp :)
#include "stdafx.h"
#include <iostream>
int _tmain(int argc, _TCHAR* argv[]) {
std::cout<<"HelloWorld";
return 0;
}
Далее создадим новый проект из шаблона New Project-->Other Project Types-->Setup and Deployment-->Visual Studio Installer-->Setup Project
Назовем его HelloWorldInstaller. Я его поместил в D:\Labs\2sem
Получили результат.


Нажимаем правой клавишей в окне Solution Explorer на SolutionHelloWorldInstaller выбираем в всплывающем окне Add-->Existing Project и ищем папку нашего проекта HelloWorld и ищем файл с форматом vcxproj. Выбираем его. Все! Он добавился.
Далее в Solution Explorer щелкаем правой клавишей на HelloWorldInstaller. Выбираем Add-->Project Output.
На экране появилось окно. Выбираем наш проект HelloWorld в списке проектов. Пункт Primary Output позволяет добавить все .dll и .exe файлы (которые были построены) из проекта.

Нажимаете ОК. Теперь постройте проект (Build).
Ура! Мы получили готовый msi файл и установщик. Дело сделано.