PDA

View Full Version : سوال: خطای directory is invalid جهت اجرای کامند با دسترسی Admin



hahaie
شنبه 25 اردیبهشت 1400, 11:31 صبح
دوستان سلام
وقتتون بخیر
من از کد زیر برای اجرای یک کامند روی کلاینت ها استفاده کردم:


System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";//@"C:\Windows\System32\cmd.exe";
startInfo.Arguments = "/c net time \\mydomain.ir /set /y >> result2.txt";
startInfo.UseShellExecute = false;
startInfo.RedirectStandardError = true;
startInfo.RedirectStandardOutput = true;
var sspw = new SecureString();
foreach (var c in "Asd@12345")
{
sspw.AppendChar(c);
}
startInfo.Domain = "mydomain.it";
startInfo.UserName = "ahmadi";
startInfo.Verb = "runas";
startInfo.Password = sspw;
process.StartInfo = startInfo;
process.Start();
process.WaitForExit();


مشکل اینجاس که خطای the directory is invalid میده

شاید اصلا کد درست نباشه
=============
من یک یوزر دیگه ای رو تست کردم که اونم دسترسی کامل داره.با اجرای دستور فوق فقط صفحه cmd باز میشه و هیچ چیزیم داخلش نوشته نمیشه و نشده و حتی فایل result هم ایجاد نمیشه

hahaie
شنبه 25 اردیبهشت 1400, 14:46 عصر
آقا حل شد لازمه برای تابع argument قبل از رشته کاراکتر @ را قرار بدیم.

hahaie
یک شنبه 26 اردیبهشت 1400, 14:55 عصر
دوستان سلام مجدد
با بررسی و کار بیشتر متوجه شدم مشکل حل نشده بوده و در اصل یوزری که این برنامه رو اجرا میکرده دسترسی کامل داشته.
خطای the directory is invalid میده و در واقع انگار کد رو Run as نمیکنه چون همین کد (برنامه) رو اگه یوزری که دسترسی ادمین داره اجرا کنه خطایی داده نمیشه و جواب میده