Forum

c# la client bilgis...
 
Bildirimler
Hepsini Temizle

c# la client bilgisayarı domaine almak

2 Yazılar
1 Üyeler
0 Likes
906 Görüntüleme
(@davuteren)
Gönderiler: 1584
Noble Member
Konu başlatıcı
 

Merhaba arkadaşlar c# la bir uygulama yazıyorum. client bilgisayarı domaine almak istiyorum ama değerler null geliyor. sanırım yanlış birşey yapıyorum.. vb scriptle denedim elle çalıştırılıyor script. ama c# la çağırınca script çalışıyor fakat domaine almıyor.. anlamadım. benim için vb script değilde netdom komutuyla alabilmem daha öncemli. konu hakkında bilen arkadaşlardan yardımlarını bekliyorum..

 

kod aşağıdaki gibidir. iki yöntemle de denedim olmadı..

 

 public static void DomaineAl()
        {
            string netdom = "%Windir%\\System32\netdom.exe" + " " + "join" + " " + "%computername%" + " " + "/domain:davuteren.local" + " " + "/UserD:Administrator" + " " + "/Password:" + " " + "parolasi";
            try
            {
                System.Diagnostics.Process p = new System.Diagnostics.Process();

                p.StartInfo.FileName = "cmd";

                p.StartInfo.Arguments = "/c " + netdom;

                p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;

                p.StartInfo.CreateNoWindow = true;

                p.StartInfo.RedirectStandardOutput = true;

                p.StartInfo.UseShellExecute = false;

                p.Start();

                string output = p.StandardOutput.ReadToEnd();

           

                //Process.Start("c:\\windows\\system32\\netdom.exe" + "join " + "%computername% " + "/domain:davuteren.local " + "/UserD:Administrator " + "/Password: " + "parolasi");
               
            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message);
            }
 

 
Gönderildi : 19/12/2012 20:35

(@davuteren)
Gönderiler: 1584
Noble Member
Konu başlatıcı
 

kendi sorumun cevabını vereyim istiyorum. 🙂 c# la bilgisayarı domain e almak isteyen arkadaşlara ışık tutar umarım.. 

** Bu işlem için netdom.exe yi c:\windows\system32 dizini altına atmanız gerekiyor.

      

 

  public static void DomaineAl()
        {
            DomaineAdd DA = new DomaineAdd(); //DomainAdd adında bir class oluşturup instance ini aldık
            DataTable Password; //Password datatable a atmak için değişken oluşturduk
            string Qry;
            Qry = string.Empty;
            Qry = "SELECT Password FROM Information";

            Password = DA.dtable(Qry);

            string pass = Password.Rows[0]["Password"].ToString();
        
            string netdom = ("netdom.exe" + " join " + "%computername% " + "/domain:davuteren.local " + "/userd:Administrator " + "/passwordd:" + pass.ToString());
            try
            {
              
                System.Diagnostics.Process p = new System.Diagnostics.Process();//process’in instancesini aldık

                p.StartInfo.FileName = "cmd";//Çalıstırılacak file

                p.StartInfo.Arguments = "/c " + netdom;//file içerisine gönderilecek arguments

                p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;//Komut çalıstıgında Cmd penceresinin açılmasını engelledik

                p.StartInfo.CreateNoWindow = true;//Pencere Açılmasını engeller

                p.StartInfo.RedirectStandardOutput = true;

                p.StartInfo.UseShellExecute = false;

                p.Start();//process Çalıstırılır

               
               
            }
            catch (Exception ex)
            {

                MessageBox.Show(ex.Message);
            }

     
        }

 
Gönderildi : 22/12/2012 16:33

Paylaş: