Makale numarası: 164787 - Son Gözden Geçirme: 12 Aralık 2005 Pazartesi - Gözden geçirme: 4.2 BİLGİ: Windows Rundll ve Rundll32 Arabirimi
Bu Sayfada™zet
Microsoft Windows 95, Windows 98 ve Windows Millennium Edition (Me), 16 bit veya 32 bit bir DLL dosyasından verilen işlevi çağırmanıza olanak tanıyan Rundll.exe ve Rundll32.exe adlı iki komut satırı yardımcı programı içerir. Ancak, Rundll ve Rundll32 programları herhangi bir DLL dosyasından verilen işlevleri çağırmanıza izin vermez. Örneğin, bu yardımcı programları, sistem DLL'lerinden verilen Win32 API (Uygulama Programlama Arabirimi) çağrılarına yönelik olarak kullanamazsınız. Programlar yalnızca açıkça onları çağırmak üzere yazılmış bir DLL'deki işlevleri çağırmanıza izin verir. Bu makalede, yukarıda listelenen Windows işletim sistemlerinde Rundll ve Rundll32 programlarının kullanımı ile ilgili daha ayrıntılı bilgiler sağlanır.
Microsoft Windows NT 4.0, Windows 2000 ve Windows XP yalnızca Rundll32 ile birlikte gelir. Bu platformların hiçbirinde Rundll (Win16 yardımcı programı) desteği bulunmamaktadır. Rundll ve Rundll32 yardımcı programları, gerçekte Microsoft'ta iç kullanım amacıyla tasarlanmıştır. Ancak, sağladıkları işlevsellik yeterince genel olduğu için genel kullanıma sunulmuştur. Windows NT 4.0'ın yalnızca Rundll32 yardımcı programıyla birlikte geldiğini ve yalnızca Rundll32'yi desteklediğini unutmayın. Daha fazla bilgiRundll ile Rundll32 karşılaştırmasıRundll 16 bir DLL dosyalarını, Rundll32 ise 32 bit DLL dosyalarını yükler ve çalıştırır. Rundll veya Rundll32'ye yanlış DLL türünü geçirirseniz, bu dosya herhangi bir hata iletisi görüntülemeden başarısız olabilir.Rundll komut satırıRundll komut satırı aşağıdaki gibidir:
Rundll Nasıl ÇalışırRundll aşağıdaki adımları gerçekleştirir:
DLL Dosyanızı YazmaDLL dosyanızda, <girişnoktası> işlevini aşağıdaki prototipe göre yazın:16-bit DLL:
hwnd - DLL dosyanızın oluşturduğu tüm pencereler için pencere sahibi
olarak kullanılması gereken pencere tanıtıcısı
hinst - DLL dosyanızın örnek tanıtıcısı
lpszCmdLine - DLL dosyanızın ayrıştırması gereken ASCIIZ komut satırı
nCmdShow - DLL dosyası pencerelerinin nasıl görüntülenmesi gerektiğini açıklar
hwnd = (ana pencere tanıtıcısı) hinst = HINSTANCE of SETUPX.DLL lpszCmdLine = "132 C:\WINDOWS\INF\SHELL.INF" nCmdShow = (CreateProcess için hangi nCmdShow geçirilmişse) Windows 95 ve Windows NT Arasındaki Farklılıklar ile İlgili Özel NotlarWindows NT, Windows 2000 ve Windows XP'de, Rundll32.exe davranışı UNICODE komut satırlarını içerecek biçimde biraz farklıdır.Windows NT öncelikle <EntryPoint>W için GetProcAddress işlevini gerçekleştirmeye çalışır. Bu giriş noktası bulunursa, prototipin aşağıdaki gibi olduğu varsayılır: <EntryPoint>W giriş noktası bulunmazsa, Windows NT, <girişnoktası>A ve <girişnoktası> için GetProcAddress işlevini kullanır. Bunlardan biri bulunursa, ANSI giriş noktası olarak nitelendirilir ve Windows 95/98/Me ile aynı şekilde kullanılır. Bu nedenle, DLL dosyanızın Windows 95'te ANSI desteğiyle ve Windows NT/2000/XP'de UNICODE desteğiyle çalışmasını isterseniz iki işlevi vermelisiniz: EntryPointW ve EntryPoint. Windows NT/2000/Me'de, EntryPointW işlevi bir UNICODE komut satırıyla çağrılır; Windows 95/98/Me'de, EntryPoint işlevi bir ANSI Komut satırı ile çağrılır. Referanslar
Rundll kullanımına yönelik bir örnek için, Windows 95'te Rundll komut satırı yardımcı programını kullanarak bir Denetim Masası Uygulaması başlatma ile ilgili olan aşağıdaki makaleye başvurun: 135068
(http://support.microsoft.com/kb/135068/TR/
)
NASIL YAPILIR: Windows 95, 98 veya WinNT'de Bir Denetim Masası Uygulaması Başlatma (Bu bağlantı, bir kısmı veya tamamı İngilizce olan içeriğe işaret edebilir.) Bu makaledeki bilginin uygulandığı durum:
| Diğer Kaynaklar Diğer Destek Siteleri
ToplulukMakale çevirileri
|






Windows Live
Facebook
Twitter
Linkedin
Digg it
Yahoo
Delicious
StumbleUpon
Yammer
Reddit
Technorati
FriendFeed
Email
Üste