Çözüldü C#'da OS kütüphanesi var mı?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

DeGaston

Hectopat
Katılım
14 Nisan 2020
Mesajlar
1.048
Makaleler
2
Çözümler
6
Merhaba Python'da OS diye bir kütüphane var. Onu kullanarak istediğimiz programlari dosya yoluyla çalıştırabiliyoruz. C#'da Windows Forms kullanarak yapmak istiyorum. C#'da böyle bir kütüphane var mı?
 
Son düzenleyen: Moderatör:
Çözüm
Eki Görüntüle 988346

Hocam çok yardımcı oldunuz sadece bir tane kaldı 😅. Kodu tamamen sizden kopya çekermiş gibi oldu ama öğreniyorum işte.
İlk mesajımda söylemiştim aslında. Dc değişkenine değer atamıyorsun. Değer atamadan kullanamazsın. string dc = "buraya kısayol kelimesini yaz" yapman gerekiyor. mesela string dc = "dc" şeklinde. Ayrıca değişkende tutmak yerine direk de yazabilirsin. yani if(kisayol == "dc") şeklinde.
Ayrıca ek olarak string ifadelerini bu şekilde karşılaştırmıyoruz.
if(kisayol.ToLower().Equals(dc)) şeklinde yapman daha iyi olacaktır. Bu Textboxtan gelen değeri önce küçük karaktere çeviriyor(örneğin "aSd" -> "asd" oluyor) daha sonra equals metodu ile bu değere eşit mi diye kontrol ediyoruz.

Sanırım aradığınız kütüphane bu. Derken değilmiş.

Siz child process çalıştırmaktan bahsediyorsunuz.

Bu şekilde yaparsanız çalışan processin çıktılarını da alabilirsiniz.
C#:
var processInfo = new ProcessStartInfo("cmd.exe", "/c _COMMAND_")
{
    CreateNoWindow = true,
    UseShellExecute = false,
    RedirectStandardError = true,
    RedirectStandardOutput = true,
    WorkingDirectory = pwd
};
StringBuilder sb = new StringBuilder();
Process p = Process.Start(processInfo);
p.OutputDataReceived += (sender, pArgs) => sb.AppendLine(pArgs.Data);
p.BeginOutputReadLine();
p.WaitForExit();

Sadece exe çalıştırmak istiyorsanız System.Diagnostics yeterli.
 
System.Diagnostics'i ekleyip Process.Start("dosya yolu"); şeklinde program çalıştırabilirsiniz.

Ekleme: Dosya yolu yerine URL de koyabilirsiniz.(Varsayılan tarayıcı ile açılır.)
textbox ile çalışıyor mu? Mesela "dc" yazdığımda textbox'dan değeri çekip if elif döngüsüne soksam çalışır mı?
 
Beceremedim galiba.

Screenshot_16.png


Bunu yapınca hatalar veriyor. Nerede hata yaptım anlayamıyorum. Yardımcı olur musunuz? Birkaç tane daha kısayol eklemek istiyorum(Zoom Chrome Minecraft gibi).
Not: Şimdilik çözüldü kaldırıyorum daha sonra tekrar işaretlerim.
 
Beceremedim galiba.

Eki Görüntüle 988343

Bunu yapınca hatalar veriyor. Nerede hata yaptım anlayamıyorum. Yardımcı olur musunuz? Birkaç tane daha kısayol eklemek istiyorum(Zoom Chrome Minecraft gibi).
Not: Şimdilik çözüldü kaldırıyorum daha sonra tekrar işaretlerim.
Öncelikle, dc değişkenine değer atamamışsınız. if satırında kisayol == dc yapman gerekiyor. tek = işareti atama yapar. Kontrol için == kullanman gerekiyor.
 

Yeni konular

Geri
Yukarı