2015-11-10 2 views
2

Я хочу, чтобы выполнить следующий запрос MySQL, используя код Java:Запуск CMD от имени администратора, используя код Java

mysqldump -uroot -ppassword temp1>C:\abc.sql 

После долгих поисков я узнал, что это нужно CMD запустить как администратор, я не знать, как запускать как admin, используя java-код. Я попытался это, но он не работает

runtimeProcess = Runtime.getRuntime().exec(new String[] { "runas /profile /user:Administrator \"cmd.exe", executeCmd }); 

ли кто имеет какие-либо идеи относительно этого. Спасибо заранее.

+0

Возможно подобный вопрос http://stackoverflow.com/questions/14596599/run-command-prompt-as-administrat или – boly38

+0

да, но я не получаю, как использовать возвышение в моем случае. Было бы хорошо, если бы вы могли помочь мне в отношении этого @ boly38 – AnonymousDev

+0

И этот? http://stackoverflow.com/q/24887927/1827276 – boly38

ответ

1

Вы можете использовать runas /savecred для выполнения, но я предлагаю вам использовать JNI вместо:

CreateProcessWithLogonW

CreateProcessAsUser

Вы можете найти примеры здесь:

http://blogs.msdn.com/b/alejacma/archive/2007/12/20/how-to-call-createprocesswithlogonw-createprocessasuser-in-net.aspx

+0

Будет ли мое заявление выглядеть так? Runtime.getRuntime(). Exec (new String [] {"cmd.exe", "/ c", "runas/savecred", executeCmd}) – AnonymousDev

+1

@Varun Должно быть так: Runtime.getRuntime(). Exec («cmd/c \» runas/savecred/user: theDomain \\ administrator yourCommand \ ""); – cshu

+0

thanx @ Griddoor – AnonymousDev

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