Bir Internet sunucusu uzantısı dll yazdım, o yüzden uzantısı denir sonra onun yürütme, set noktalarını veya monitör değişken değerlerini izleyebilirsiniz hata ayıklayıcı altında çalışan almakla ilginizi çekebilir. Microsoft Internet Information Server (IIS) kalkarken ve hata ayıklayıcı dll ile çalışan biraz zor. İlk sessiz bir sunucunun nerede kontrollü bir ortamda dll hata bulmak gerekecek. Bir kez böyle bir kaynak bulduk, sen-ebilmek başlamak hata ayıklama dll.
Sürüm 3.0 ve IIS 4.0 arasındaki farklılıklar nedeniyle, dll dosyanızın hatalarını ayıklamak için kullanacağınız sürümünü bilmek önemlidir.
Bir Internet sunucusu uzantısı dll IIS 3.0 kullanarak hata ayıklamak için aşağıdaki adımları izleyin:
-e W3Svc
İpucu hata ayıklama
IIS, etkileşimli uygulama yapmak çok daha kolay hata ayıklama çalıştırılabilir. Bunun için sisteminize birkaç değişiklik yapmanız gerekir. Sunucu altında çalıştırmak için gidiyoruz kullanıcı hesabı için bazı ayrıcalıklar eklemeniz gerekiyor.
Ayrıcalıklar eklemek için Kullanıcı Yöneticisi'ni çalıştırın. (Windows NT 3.51 kullanıyorsanız, musrmgr çalıştırın.EXE. Windows NT 4.0 kullanıyorsanız, usrmgr çalıştırın.EXE.) Kullanıcı hakları ilkeleri menüsünü tıklayın. Gelişmiş kullanıcı haklarını göster onay kutusunu seçin. Daha sonra işletim sisteminin parçası olarak sağ aşağı açılan listeden seçin ve kullanıcı hesabı ekleme.
Bu işlem ile Güvenlik denetimleri oluştur (Ayrıca sağ tarafta açılan liste) tekrarlayın. Tüm Internet hizmetlerini (www, ftp ve gopher) durdurulduğundan emin emin olun ve INETINFO.exe çalışmıyor (TLIST denetlemek için kullanın). Oturumu kapatın ve yeniden oturum açın. Ardından IIS komut satırı ile yükleyebilirsiniz:
Inetinfo.exe -e W3Svc
IIS altında bir hata ayıklayıcı (örneğin altında WinDbg) yüklemek için aşağıdaki komut satırını kullanın:
WinDbg Inetinfo.exe -e W3Svc
Sen are anık gitmek. Visual c++ için Debug Build menüsünden ve sonra Git' i tıklatın. Bu eylem www yayımlama hizmetini başlatır ve hata ayıklayıcı dll içindeki simgeler farkında olacak. Uyarı hata ayıklama bilgisi dosyası yok sayabilirsiniz.
Visual C++'ı kapattığınızda, çalışma alanını INETINFO için kaydedin.EXE. Bu şekilde, siz ayarları için hata ayıklama oturumu dizilimini. INETİNFO açmanız yeterlidir.Hata ayıklayıcı yeniden başlatmaya hazır olduğunuzda mds çalışma alanı dosyası.
Önbelleğe alınan DLL'leri
HKEY_LOCAL_MACHINE/system/CurrentControlSet/Hizmetleri/W3SVC/parametreler/dll dosyalarını yeniden kullanıldıkları her zaman sunucu için CacheExtensions kayıt defteri ayarını ayarlayabilirsiniz. Bu ayar 1 ise, sunucu DLL yüklü içinde bellek mümkün olduğu sürece devam edecektir. Çünkü, sunucunun en yüksek performansı elde etmek yardımcı olur ve hata ayıklama için sunucu kullanıyorsanız, yalnızca değiştirilmesi gereken, sunucu için varsayılan ayardır. Yaptığınız ayar 0, sunucu her zaman yeniden uzantısı dll dosyaları her zaman onlar kullanılır.
Dll kilitleniyor veya bu tutar herhangi bir örneği başına veri üzüyor dll yeniden sunucuya zorlama yararlıdır. dll yeniden başlatmak için sunucu zorlayarak, dll dosyanızın geri öngörülebilir bir devlet küçük bir çaba ile alabilirsiniz. Normal CacheExtensions ayarı kullanarak dll, ancak emin olmak için dll kodunu ilk devlet üzerinde tamamen bağımlı değildir sınadığınızdan emin olun.
Sunucu bileşenleri ve Internet sunucu uzantısı dll dosyaları, IIS 4.0 veya sonraki bir sürümünü kullanırken hata ayıklama için bir ortam oluşturmak için çeşitli yolları vardır. Bir Windows NT işleme iliştirme yetenekli bir hata ayıklayıcı kullanıyorsanız, bileşen veya uzantı hata ayıklamak için bu işlevi kullanabilirsiniz. Visual c++ ile hata ayıklama, örneğin, aşağıdaki adımları uygulayın.:
Bir Windows NT işleme kullanmakta olduğunuz hata ayıklayıcısı eklenemiyor, uygun bir hata ayıklama ortamı kurmak için aşağıdaki adımları uygulayın:
Hata ayıklayıcı = lt; DebuggerExeName > DebuggerExeName hata ayıklayıcısının tam yolunu nerede kullanıyorsunuz.
World Wide Web Yayımlama hizmeti başlatıldığında, ayıklayıcınızı de piyasaya sunulacak. Şimdi senin Internet sunucu uzantısı dll uygun kesme noktaları ayarlayabilirsiniz.
Kadar bileşeni belleğe yüklenen bileşenin kaynak kodunu kesme noktası ayarlamak mümkün değildir. Bunu yapmak için Internet Explorer ve görünümü başlar.Nesneyi içeren asp sayfası. En kısa sürede Sayfa yüklendiğinde, sen-meli muktedir in your component kesme noktası ayarlamak. Sayfayı yeniden görüntülemek için Yenile ' yi tıklatın ve seçilen kırılma noktalarını tetiklemek. Varsa (örneğin, bileşenin başlangıç kodunda hata oluşursa), hatta bir kez bileşeni yüklenemiyor, hata ayıklama oturumu başlatmadan önce dll bileşenini yüklemeniz gerekir. (Bkz. Adım 11 aşağıda.)
Bazı durumlarda, yukarıda açıklanan iki yordamlardan birini kullanmak mümkün olmayabilir. Bu stratejilerden birini kullanmakta güçlük çekiyorsanız, önceki IIS sürümlerinde açıklanan üçüncü bir yaklaşım olduğunu. Windows NT güvenlik ayrıcalıkları kurulması hem de kayıt defterine değişiklikler yapmadan bu üçüncü bir yaklaşım gerektirir. Ayrıca, IIS bir hizmet olarak çalıştırmak için yeteneği devre dışı bırakır. Önceki iki stratejileri başarısız olursa, yalnızca bu yaklaşım kullanılmalıdır.
{61738644-F196-11D0-9953-00C04FD919C1} / / IIS wamreg admin Servisi
{9F0BD3A0-EC01-11D0-A6A0-00A0C922E752} / / IIS Admin şifre uzantısı
{A9E69610-B80D-11D0-B9B9-00A0C922E750} / / IISADMIN hizmeti
AppID ek anahtarlardaki LocalService anahtar kelime bulunabilir.
C:\WINNT\System32\Inetsrv\Inetinfo.exe
-e w3svc
&Notnbsp; Hata ayıklama oturumu tamamladıktan sonra adım 5'ten önceki ayarları geri yüklemek ve bir hizmet olarak çalışması için IIS izin vermek için 1 tersine çevirmeniz gerekir.
Teknik notlar numarasına göre |nbsp; Teknik notlar kategorisine göre