Vb.Net İstek Kod

zztri

Yaşayan Forum Efsanesi
9 Tem 2015
10,053
390
Ankara
Offf.. pis kod istedin ustam yaa.. Anladığım kadarı ile başka bir programın o anda görünen ikonunu değiştirmek istiyorsun.. Bu işte msdn'in dokümantasyon eksikliği yüzünden - msdn'deki örnek kod çalışmıyordu bile - birazcık araştırma gerektiriyor.

Pinvoke gerekir. kernel32.dll içinde beginupdateresource, updateresource ve endupdateresource diye üç fonksiyon var. Onlarla yapılabilir. Yapan var, demek ki biz de yapabiliriz.

Ya bu bana da lazım olur. Kendime C#'da test edeyim, becerirsem burada atarım.

Edit: Adam gibi anlatamadım. Mesela d:\'de bir tane osman.exe var. Osman.exe'nin ikonu karpuz. Sen bu karpuz ikonu yerine elinde olan kavun ikonunu göstermesini istiyorsun, değil mi?
 
Son düzenleme:

qoqoqtay

Uzman üye
27 Ağu 2011
1,678
0
malatya
Offf.. pis kod istedin ustam yaa.. Anladığım kadarı ile başka bir programın o anda görünen ikonunu değiştirmek istiyorsun.. Bu işte msdn'in dokümantasyon eksikliği yüzünden - msdn'deki örnek kod çalışmıyordu bile - birazcık araştırma gerektiriyor.

Pinvoke gerekir. kernel32.dll içinde beginupdateresource, updateresource ve endupdateresource diye üç fonksiyon var. Onlarla yapılabilir. Yapan var, demek ki biz de yapabiliriz.

Ya bu bana da lazım olur. Kendime C#'da test edeyim, becerirsem burada atarım.

Edit: Adam gibi anlatamadım. Mesela d:\'de bir tane osman.exe var. Osman.exe'nin ikonu karpuz. Sen bu karpuz ikonu yerine elinde olan kavun ikonunu göstermesini istiyorsun, değil mi?

aynen üstadım bklyrm seni :D
 

zztri

Yaşayan Forum Efsanesi
9 Tem 2015
10,053
390
Ankara
aynen üstadım bklyrm seni :D

Çok beklersin....

Ciddi ciddi epey bir süre daha beklemen gerekebilir.. C++'ta yazabildim, çok fazla C++ makro vs. gerekiyordu üşendim hepsinin C# karşılığını bulmaya.. Bir dosyadan bütün eski resource'ları sildim, sadece ikon resource'unu yükledim veee... ikon tamamen kayboldu, dosya çalışmaz hale geldi.

Neden? Bir de "MAINICON" yapısı, yani bu yüklediğin ikonun eni ne, boyu ne, renk aralığı ne, kaç plane'i var onu da koymam lazımmış..

Bu kadarcık şeyi araştırmak 3 saatimi aldı.. Windows PE sisteminin en gerzek yönünü bulduk sanırım, hayırlı olsun.
 

qoqoqtay

Uzman üye
27 Ağu 2011
1,678
0
malatya
Çok beklersin....

Ciddi ciddi epey bir süre daha beklemen gerekebilir.. C++'ta yazabildim, çok fazla C++ makro vs. gerekiyordu üşendim hepsinin C# karşılığını bulmaya.. Bir dosyadan bütün eski resource'ları sildim, sadece ikon resource'unu yükledim veee... ikon tamamen kayboldu, dosya çalışmaz hale geldi.

Neden? Bir de "MAINICON" yapısı, yani bu yüklediğin ikonun eni ne, boyu ne, renk aralığı ne, kaç plane'i var onu da koymam lazımmış..

Bu kadarcık şeyi araştırmak 3 saatimi aldı.. Windows PE sisteminin en gerzek yönünü bulduk sanırım, hayırlı olsun.

:) anladım üstadım forumda bi ara görmüştüm millet yapıyor basit bir grafikte yapmıştı hemde
 

vily

Katılımcı Üye
19 Eki 2014
585
1
1 pictureBocx
3 Button
2 TextBox

1 OpenFileDialog


Puplic Class Form1
Private Sub Form_Unload(ByVal Cancel As Integer)
Dim deletefile As String
deletefile = "dissembler LIB.dll*
If System.IO.File.Exists(deletefile) = True Then
System.IO.File.Delete(deletefile)
End If

Button1 Click-----------------
OpenFileDialog1.DefaultExt = "exe"

OpenFileDialog1.Filter = "exe files (*.exe) |*.exe"
OpenFileDialog1.FilterIndex = 1
If OpenFileDialog1.ShowDialog(Me) = DialogResult.OK Then
TextBox1.Text = String.Empty
TextBox1.Text = OpenFileDialog1.FileName

End If

Button2 Click----------------------
OpenFileDialog1.DefaultExt = "ico"
OpenFileDialog1.Filter = "icon files (*.ico)|*.ico"
OpenFileDialog1.FilterIndex = 1
If OpenFileDialog1.ShowDialog(Me) = DialogResult.OK Then
TextBox2.Text = String.Empty
TextBox2.Text = OpenFileDialog1.FileName
End If

Button3 Click---------------------------------
If TextBox1.Text = "" Then
MsgBox("Please Pick A File/Executable", MsgBoxStyl.Critical, "Error Changing The İcon")
End If
If TextBox2.text = "" Then
MsgBox("Please Pick A İcon Format File", MsgBoxStyl.Critical, "Error Changing The İcon")
End If
If TextBox1.Text = "" Then Exit Sub
If TextBox2.Text = "" Then Exit Sub

IconInjector.Injecticon (TextBox1.Text, textBox2.Text)
Dim pros As Process ()
pros = Process.GetProcesses()
For Each pro As Process In pros
If pro.ProcessName.ToLower().IndexOf("explore")> -1 Then
pro.Kill()
Exit For
End If
Next
MsgBox("Icon changel Succesfully !", MsgBoxStyle.Information, "Success")

End Sub

Puplic Class Class1
End Class
 

zztri

Yaşayan Forum Efsanesi
9 Tem 2015
10,053
390
Ankara
kodun bu olacak
IconInjector.InjectIcon(TextBox1.Text, GhostTextBox2.Text)
kaynak site: https://leakforums.net/thread-25879

visual studio'da existing item olarak asagıdaki dosyayı eklemelisin, yoksa injector kodunu gormez
iconinjector

Allah razı olsun.. Yapılmışı varmış.. Ne yazık ki C++'ta bitirdiğimde gördüm bu mesajı, "yaptım" demek için mesaj atacaktım ama... artık en azından vb.net'e çevirmekle uğraşmam..

qoqoqtay: Kaynak koduna bakıyorum üstadım şu anda, çalışıyor, VB.NET ile tam uyumlu.. aslında tam managed kod değil, suppressunmanagedcodesecurity ile çalışıyor ama kendi içlerinde memory leak'e filan izin vermemişler, güzel yazmışlar. Ben artık çevirmiyorum kendi kodum C++'ta kalacak, sen bunu çok daha rahat kullanırsın.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.