Çözüldü Projeye ".exe" uzantılı program gömüp nasıl çalıştırılabilir?

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

515079

Decapat
Katılım
15 Ocak 2022
Mesajlar
823
Çözümler
21
C#'da Form uygulaması yapıyorum ve projeye .exe uzantılı bir program gömüp butona basınca çalışmasını istiyorum. Resource klasörü ile denedim fakat doğru kodu bulamadım.
 
Son düzenleyen: Moderatör:
Çözüm
C#'da Form uygulaması yapıyorum ve projeye .exe uzantılı bir program gömüp butona basınca çalışmasını istiyorum. Resource klasörü ile denedim fakat doğru kodu bulamadım.
Ana programın bulunduğu klasöre *.exe uzantılı programı kurup, ShellExecute yani Process.Start ile çalıştırabilirsiniz.
C#'da Form uygulaması yapıyorum ve projeye .exe uzantılı bir program gömüp butona basınca çalışmasını istiyorum. Resource klasörü ile denedim fakat doğru kodu bulamadım.
Ana programın bulunduğu klasöre *.exe uzantılı programı kurup, ShellExecute yani Process.Start ile çalıştırabilirsiniz.
 
Çözüm
.exe Uzantılı programı forma gömmem lazım. Yaptığım proje bitince sadece .exe halini kullanacağım çünkü.
Buradaki kaynak kodlarına göz atabilirsin.

 
Buradaki kaynak kodlarına göz atabilirsin.

Maalesef bütün kodlarda hata verdi. Resource klasörüne programı atsam kod ile nasıl çalıştırabilirim programı?
 
Mantıklı bir yaklaşım değil. Projenin Resource kısmı, görsel, müzik, logo vb. şeyler için kullanılır.

Bir *.exe dosyasını Resource içinde tutmak mantıklı değil. Onun dışında, yani proje *.exe dosyasının yanında bir klasör oluşturup içine farklı *.exe dosyası koyabilirsiniz. Veya aynı dizin içinde olabilirler.

Bunun dışında eğer her 2 programı siz yazdıysanız kodlarını tek program içinde birleştirebilirsiniz.
 
Ana programın bulunduğu klasöre *.exe uzantılı programı kurup, ShellExecute yani Process.Start ile çalıştırabilirsiniz.
Onun dışında, yani proje *.exe dosyasının yanında bir klasör oluşturup içine farklı *.exe dosyası koyabilirsiniz. Veya aynı dizin içinde olabilirler.
@246675 @300319 İkinizin de dediği gibi *.exe dosyasını klasöre koyup Process.Start ile çalıştıracağım.
 
Mantıklı bir yaklaşım değil. Projenin Resource kısmı, görsel, müzik, logo vb. şeyler için kullanılır.

Bir *.exe dosyasını Resource içinde tutmak mantıklı değil. Onun dışında, yani proje *.exe dosyasının yanında bir klasör oluşturup içine farklı *.exe dosyası koyabilirsiniz. Veya aynı dizin içinde olabilirler.

Bunun dışında eğer her 2 programı siz yazdıysanız kodlarını tek program içinde birleştirebilirsiniz.
C++'da da öyle ama C# çok deneyimlemediğim için yazmadım, siz doğrulamış oldunuz.
 
Direkt Process.Start() yapmayın.

Önce File.Exists() metotu ile *.exe dosyasının olup olmadığını denetleyin. Bu sayede eğer program yoksa dosya konumu içinde programınız çökmeyecektir. Onun yerine "program bulunamadı" gibi bir uyarı verebilirsiniz.

Örnek kod atmak gerekirse;

C#:
if (File.Exists("dosya.exe")) {
    Process.Start("dosya.exe");
}else {
    MessageBox.Show("Dosya bulunamadı.");
}
 

Technopat Haberler

Geri
Yukarı