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

среда, 7 ноября 2012 г.

Дизассемблер .Net

Оказывается с помощью стандартных средств Visual Studio можно дизассемблировать PE-файлы(exe,dll,mod,mdl) скомпилированные .Net компилятором. Для этого нам понадобится утилита ildasm.exe. 
У меня она находится в папке  C:\Program Files\Microsoft SDKs\Windows\v6.0A\bin
Выбираем файл и смотрим=)


суббота, 29 октября 2011 г.

Как узнать, запущена программа в режиме администратора или нет?

Иногда для корректной работы программы нам необходимо использовать функции, доступные только администратору в Windows 7/Vista. И тот код, который вроде как бы успешно работал в WinXP, может просто игнорироваться в этих системах. Для этого программы нужно запускать с от администратора.
Но как узнать, как запушена программа в коде самой программы?

На шарпе делается всё просто:

Подключаем:
using System.Security.Principal;

* This source code was highlighted with Source Code Highlighter.

и используем следующее:
bool isAdmin = new WindowsPrincipal(WindowsIdentity.GetCurrent()).IsInRole(WindowsBuiltInRole.Administrator) ? true : false;

* This source code was highlighted with Source Code Highlighter.

ну и проверяем:
 if(!isAdmin)
{

 MessageBox.Show("Перезапустите программу в режиме администратора");

}


* This source code was highlighted with Source Code Highlighter.