|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|
Не получается скомпилировать С# исходник, чтобы заработало01.07.2016, 19:54. Показов 2728. Ответов 22
Метки нет (Все метки)
Начало темы здесь Запуск определённой программы от имени локального администратора штатными средствами Windows 7 x64
Пробовал из .NET 2,3 и 4 csc исходника из http://procod.blogspot.ru/2011/07/runas.html с введёнными моими параметрами в 11-ой строке. В итоге, каждый раз получался exe-шник, но при попытке его запустить мигает чёрное окошко и ничего не происходит.
0
|
|
| 01.07.2016, 19:54 | |
|
Ответы с готовыми решениями:
22
Скомпилировать С++ исходник Как сделать, чтобы заработало? Как подключить и чтобы заработало? |
|
132 / 82 / 29
Регистрация: 01.10.2014
Сообщений: 263
|
|
| 01.07.2016, 20:21 | |
|
VictorLS, Запустите вашу программу из консоли, там будут указания, что надо сделать.
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|
| 01.07.2016, 21:38 [ТС] | |
|
slashvlz, спасибо, но я в С# абсолютный новичок, поэтому задам, возможно, ламерский вопрос: как запустить мою программу из консоли?
0
|
|
|
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
|
|
| 01.07.2016, 21:44 | |
|
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|
| 01.07.2016, 22:32 [ТС] | |
|
Command line syntax:
runasuser [-u user] [-p password] [-d domain] someprogram.exe [params] т.е. стопорится на 37-ой строке. Имхо надо немного переписАть исходник, но как я не знаю (
0
|
|
|
132 / 82 / 29
Регистрация: 01.10.2014
Сообщений: 263
|
|
| 01.07.2016, 22:49 | |
|
VictorLS, ничего там не стопорится, так и должно быть, если вы не понимаете что там написано, то лучше не используйте эту программу. C# тут не причём.
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|
| 02.07.2016, 08:33 [ТС] | |
|
С удовольствием прочитаю ответы от других продвинутых программистов С#, т.к. к сожалению нет времени разбираться.
Имхо надо помимо прописи данных админской учётки в 11-ой строке надо выкинуть строки с 12 по 40 и разобраться с { и }, чтобы не было ошибки синтаксиса.
0
|
|
|
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
|
||
| 02.07.2016, 08:36 | ||
|
А можно вообще не трогать код и просто передать программе все аргументы через командную строку как это задумывалось автором.
1
|
||
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
||||||
| 03.07.2016, 11:16 [ТС] | ||||||
|
Someone007, так идея как раз в том, чтобы пользователь не узнал пароль локального Администратора. Кстати, можно ли дизассемблированием exe-шника достать этот пароль?
Добавлено через 21 час 28 минут Найдя несколько свободных минут попробовал дома скомпилировать
Версия компилятора Microsoft (R) Visual C# 20058.00.50727.7057 для Microsoft (R) Windows (R) 2005 Framework версии2.0.50727 Авторские права (C) Microsoft Corporation 2001-2005. Все права защищены. runasui6.c(11,20): warning CS0219: Переменной "username" присвоено значение, но оно ни разу не использовано runasui6.c(11,36): warning CS0219: Переменной "password" присвоено значение, но оно ни разу не использовано runasui6.c(11,54): warning CS0219: Переменной "domain" присвоено значение, но оно ни разу не использовано runasui6.c(11,67): warning CS0219: Переменной "apppath" присвоено значение, но оно ни разу не использовано runasui6.c(11,88): warning CS0219: Переменной "arguments" присвоено значение, но оно ни разу не использовано runasui6.c(9,20): error CS0161: "RunAsUser.Program.Main(string[])": не все ветви кода возвращают значение Профессионалы программирования в С#, помогите, пожалуйста. Уверен, что исправить код так, чтобы заработало у вас займёт несколько минут и столько же, чтобы ответить в этой теме )
0
|
||||||
|
132 / 82 / 29
Регистрация: 01.10.2014
Сообщений: 263
|
|
| 03.07.2016, 13:48 | |
|
VictorLS, после 11-й строки добавьте
return RunAs(apppath, arguments, domain, username, password);
1
|
|
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|
| 03.07.2016, 20:27 [ТС] | |
|
slashvlz, СПАСИБО огромное, с этой строчкой сразу заработало.
Но осталось решить две проблемы, без которых использование скомпилированного исходника на работе затруднительно: 1. как в 11-ой строке прописАть полный путь к exe типа apppath = "C:/Program Files (x86)/UI 6/ui6.exe", чтобы компиляция прошла успешно и получившийся exe-шник сохранил работоспособность? PS. В Path прописАть не вариант, т.к. без прав локального Администратора это имхо невозможно. 2. косметическая: как после выполнения этого скомпилированного exe-шника убрать окно консоли? PS. Попробовал дизасемблировать PE Explorer'ом - ни исходника, ни, тем более пароля, не увидел. А чем потенциально можно увидеть пароль?
0
|
|
|
6691 / 4102 / 1607
Регистрация: 09.05.2015
Сообщений: 9,574
|
|
| 03.07.2016, 21:03 | |
|
1 - так и прописывайте
2 - удалите строку с циклом while
1
|
|
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|
| 03.07.2016, 22:58 [ТС] | |
|
1. Пробовал apppath = ""C:\Program Files (x86)\UI 6\ui6.exe"" и забыл убрать двойные кавычки в начале и в конце, после того как backslash \ поменял на slash /,поэтому не получалось скомпилировать.
2. СПАСИБО, теперь окно консоли пропадает после того как запускает программу от имени локального Администратора.
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|
| 03.07.2016, 23:24 [ТС] | |
|
PS. Вытащить пароль из exe-шник (4 096 байт) у меня не получилось. Если у кого-нибудь получится вытащить из вложения скажите как.
0
|
|
|
132 / 82 / 29
Регистрация: 01.10.2014
Сообщений: 263
|
|
| 03.07.2016, 23:42 | |
|
VictorLS, пароль у вас там указан "777"
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|
| 04.07.2016, 08:18 [ТС] | |
|
slashvlz, вопрос в том как Вы это узнали, если не из Не получается скомпилировать С# исходник, чтобы заработало?
0
|
|
|
132 / 82 / 29
Регистрация: 01.10.2014
Сообщений: 263
|
|
| 04.07.2016, 08:35 | |
|
VictorLS, достаточно обычного просмотрщика из TC:
1
|
|
|
132 / 82 / 29
Регистрация: 01.10.2014
Сообщений: 263
|
|
| 04.07.2016, 08:42 | |
|
Хардкодить пароль очень плохая практика, ну хотя бы ксором прошлись, чтобы уж не совсем в явном виде...Хотя у вас программка настолько маленькая, что скрыть тут что-либо очень сложно.
0
|
|
|
0 / 0 / 1
Регистрация: 10.06.2016
Сообщений: 31
|
|||
| 04.07.2016, 22:54 [ТС] | |||
|
Теоретический PS. Может есть программа типа ExeScript, которая шифровала бы код С# (например, алгоритмом AES 1024 бит - шутка)? С другой стороны, может не сложно написАть эту программу сразу на VBS или хотя бы имплементировать RUNASUSER в VBS и прогнать его ExeScript, чтобы получить один зашифрованный exe-шник (размер желательно до 1МБ)?
0
|
|||
|
1151 / 743 / 483
Регистрация: 21.01.2014
Сообщений: 1,903
|
|||
| 05.07.2016, 01:35 | |||
|
В программе будете хранить пароль в зашифрованном виде и ключ. Но так как ключ будет в исходнике прекрасно видно, то эта защита не спасет от того, кто хоть немного понимает в программировании.
1
|
|||
| 05.07.2016, 01:35 | |
|
Помогаю со студенческими работами здесь
20
Как скомпилировать исходник Gromacs на Windows Не могу скомпилировать исходник в exe (gentee) Как скомпилировать единственный .cpp исходник ?
как скомпилировать исходник на Python компилятором gcc? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Символьное дифференцирование
igorrr37 13.02.2026
/ *
Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2).
Унарный минус обозначается как !
*/
#include <iostream>
#include <stack>
#include <cctype>. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога
Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
|
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
|