Anasayfa » Forum

dll dosyasına yazı ...
 
Bildirimler

dll dosyasına yazı yazma  

  RSS
Murat güler
(@muratguler)
Üye

Merhaba

FileStream fs = File.Create(@"C:\Windows\System32\batub.dll");

bu kodu yazaraktan bir dll dosyası oluşturuyorum. Bunun içerisine nasıl bir metin ekleyebilirim. 

Teşekkürler

Alıntı
Gönderildi : 27/01/2017 14:39
Volkan Alkılıç
(@volkanalkilic)
Üye

Aşağıdaki şekilde deneyin;

using (FileStream fs = new FileStream(@"C:\Windows\System32\batub.dll", FileMode.Append, FileAccess.Write))
using (StreamWriter sw = new StreamWriter(fs))
{
sw.WriteLine("TEST");
}

CevapAlıntı
Gönderildi : 27/01/2017 15:53
Murat güler
(@muratguler)
Üye

volkan bey system32 içerisine yazdırırken erişim engellendi hatası ile karşılaşıyorum. Bu kendi bilgisayarımda kaldırdım diyelim. Başka bir bilgisayara bu programı kurarken bu hatayla karşılaşmamam için ne yapmam lazım. Bilgi verebilir misiniz ?

 Teşekkürler

 

CevapAlıntı
Gönderildi : 28/01/2017 12:58
 Anonim

[quote user="Murat güler"]

volkan bey system32 içerisine yazdırırken erişim engellendi hatası ile karşılaşıyorum. Bu kendi bilgisayarımda kaldırdım diyelim. Başka bir bilgisayara bu programı kurarken bu hatayla karşılaşmamam için ne yapmam lazım. Bilgi verebilir misiniz ?

 Teşekkürler

 

[/quote]

 

Volkan Bey daha iyisini bilir; benim fazla bir bilgim olmamakla birlikte, bu tip programlar write yaparken ki özellikle C/C++ gibi diller için register kaydı gerektiriyordu. C# da pek register kaydı gerekmez. En nihayetinde programı kullanan kişinin yönetici izni de olması gereklidir. Çünkü program ekle/kaldır muamelesi yapılır sistem dosyalarına erişim için. O da yönetici izni gerektirmektedir.

CevapAlıntı
Gönderildi : 28/01/2017 13:43
Volkan Alkılıç
(@volkanalkilic)
Üye

System32 dizininde bu tarz bir işlem yapmak için uygulamanın yönetici yetkisine sahip bir kullanıcı tarafından çalıştırılması gerekir.

CevapAlıntı
Gönderildi : 28/01/2017 13:54
Murat güler
(@muratguler)
Üye

Volkan Bey 

Bir programı gizli dosya olarak System32 altında bir yere kaydedeceğim. Fakat c# ile dosya kaydetmeye çalıştığım zaman erişim engellendi diye bir hata alıyorum. Bu hatayı nasıl aşabilirim ? dosya izinlerinden tam izin veremiyorum system32 dosyasına. Sorun bu olabilir mi ? 

Bu konu hakkında yardım ederseniz sevinirim 

Teşekkürler

CevapAlıntı
Gönderildi : 28/01/2017 14:30
Volkan Alkılıç
(@volkanalkilic)
Üye

Anladığım kadarıyla oluşturacağınız dosyayı kullanıcıdan gizlemek istiyorsunuz. Eğer durum buysa IsolatedStorageFile doğru seçim olacaktır.

Aşağıda yazma, okuma ve dizin bilgisine erişmeyi tarif eden bir örnek paylaşıyorum.

 

using (IsolatedStorageFile storage = IsolatedStorageFile.GetMachineStoreForAssembly())
{
// Yaz
using (IsolatedStorageFileStream dllStream = new IsolatedStorageFileStream("batub.dll", FileMode.Create, storage))
{
using (StreamWriter sw = new StreamWriter(dllStream))
{
sw.WriteLine("TEST");
}
}

//Oku
using (IsolatedStorageFileStream dllStream = new IsolatedStorageFileStream("batub.dll", FileMode.Open, storage))
{
using (StreamReader reader = new StreamReader(dllStream))
{
Console.WriteLine(reader.ReadToEnd());
}

//Dizin
Console.WriteLine(dllStream.GetType().GetField("m_FullPath", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(dllStream).ToString());
}

}

CevapAlıntı
Gönderildi : 28/01/2017 15:05
Murat güler
(@muratguler)
Üye

[quote user="Volkan Alkılıç"]

Anladığım kadarıyla oluşturacağınız dosyayı kullanıcıdan gizlemek istiyorsunuz. Eğer durum buysa IsolatedStorageFile doğru seçim olacaktır.

Aşağıda yazma, okuma ve dizin bilgisine erişmeyi tarif eden bir örnek paylaşıyorum.

 

using (IsolatedStorageFile storage = IsolatedStorageFile.GetMachineStoreForAssembly())
{
// Yaz
using (IsolatedStorageFileStream dllStream = new IsolatedStorageFileStream("batub.dll", FileMode.Create, storage))
{
using (StreamWriter sw = new StreamWriter(dllStream))
{
sw.WriteLine("TEST");
}
}

//Oku
using (IsolatedStorageFileStream dllStream = new IsolatedStorageFileStream("batub.dll", FileMode.Open, storage))
{
using (StreamReader reader = new StreamReader(dllStream))
{
Console.WriteLine(reader.ReadToEnd());
}

//Dizin
Console.WriteLine(dllStream.GetType().GetField("m_FullPath", BindingFlags.Instance | BindingFlags.NonPublic).GetValue(dllStream).ToString());
}

}

[/quote]

 

Volkan bey cevabınız için teşekkür ederim. Fakat ben bu oluşturulan dosyayı bilgisayarda gizli öğeleri de göstermeme rağmen göremiyorum. Bir de program dosyaları veya program files altına kaydetmeye çalıştığımda "Verilen yolun biçimi desteklenmiyor." hatasını alıyorum. bu sorunu nasıl çözebilirm acaba ? 

Teşekkürler

CevapAlıntı
Gönderildi : 28/01/2017 15:24
Paylaş: