Makale numarası: 248241 - Son Gözden Geçirme: 13 Mayıs 2003 Salı - Gözden geçirme: 3.3

INF: İstemci tarafı yardımcı programları yükleme olmayan SQL-DMO istemcilerini etkinleştirme.

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.

Bu Sayfada

Hepsini aç | Hepsini kapa

Özet

Bu makalede, SQL Server istemci yardımcı programları yüklemek zorunda olmadan, SQL Server Distributed Management Objects (SQL-DMO) istemci tarafı işlevselliğini etkinleştirmek gereken adımları belgelemektedir.

Daha fazla bilgi

Normal senaryosu

Bir uygulama SQL-DMO yararlanır yazma SQL Server'da nesne modeli. Sunucu bilgisayarda uygulamanız daha iyi çalışır kendisini ve çalıştığı ince istemci bilgisayarlarda SQL Server istemci yardımcı programları yüklüyse. Ancak, tek başına uygulama çalışmaz. Ayrıca, bu aynı zamanda ilgili çeşitli hatalar görebilirsiniz. En sık karşılaşılan hatalar şunlardır:
ActiveX nesnesi oluşturulamıyor
Alan doğru biçimde bağlı değil
Giriş noktası bulunamıyor.
Not: Microsoft Data Access Components (MDAC) yükleme sorunu gidermez.

MDAC Sqldmo.dll dosya yüklemez veya herhangi bir sayıda bağımlı DLL'lerin Sqldmo.dll dosyayla ilişkili. MDAC içerir birçok SQL-DMO istemci bağlantının kullandığı ilişkili DLL'lerin olur. DMO bağlantının çalışması için almak için MDAC dll tüm gerekmediğinden bakılmaksızın, uygulama yükleme bundling MDAC en verimli yanıt ya da, bulunacağını değil. Ayrıca, MDAC, büyük olasılıkla istemci bilgisayarlarınızda hiçbir zaman kullanacağı birçok ek özelliği yükler. Ana burada, istediğiniz işlevi yalnızca gerekli dll'i edinmek için MDAC'ın tüm yüklemeye gerek bırakmayacak noktadır. Bu makalenin sonraki bölümlerinde DLL'lerin kapsamına alınırsınız.

DLL'ler ve bunları yerleştirmek gereken değişik açıklanan çünkü kısa bir süre için şimdi digress dll COM tabanlı ve kısa bir süreliğine Win32 gözden geçirin. Bu makalenin amacıyla, tüm bilmeniz gereken, parçalama söyleyin nasıl ve ne sonra sizi tanımlayacak DLL'leri. Ile unutmayın, burada olan bilmeniz gerekenler:
  • Kaydetmek gereken dll Regsvr32 ile COM tabanlı yardımcı programı.
  • Uygulama yolu yerel bir Win32 DLL koymak gerekir.
  • Özgün Win32 DLL Win32 yerleştirebilirsiniz dizin.
Bazı durumlarda, COM arasında bir ayrım yapmak zor olabilir ve DLL'leri olmayan COM tabanlı; ancak, genellikle bir COM DLL temel her zaman aşağıdaki giriş noktaları vardır:
  • DllGetClassObject
  • my_file.dll kaydını
  • modüllerin örneğin,
  • DllCanUnloadNow
Giriş noktalarını görüntülemek için <a0></a0>, DLL'i sağ tıklatın ve sonra da kısayol menüsünde Hızlı bakış ' ı tıklatın. Görüntülenen bilgiler, dll DOSYASı bilgileri "Verme tablosu" bölümünde not edilir.

SQL-DMO listesini bir istemciden DMO etkinleştirmek için gereken bir DLL ilgili aşağıdadır:
  • Sqldmo.dll
  • Sqldmo.rll
  • Sqlsvc.dll
  • Sqlsvc.rll
  • Sqlwoa.dll
  • Sqlresld.dll
  • Sqlwid.dll
  • W95scm.dll
DLL'ler önceki listesinden Sqldmo.dll istemci bilgisayara kaydetmek için gereken tek ' dir. Ancak, başarıyla Sqldmo.dll dosya kaydetmek için Sqldmo.rll dosyası aşağıdaki dizinde istemci bilgisayarda bulunması gerekir:
(sunucu tarafı konum): c:\Mssql7\Binn\Resources\1033
(istemci tarafı konum): c:\Winnt\System32\Resources\1033
Sqldmo.rll dosyayı her zaman soruları çizer. Yerelleştirilmiş kaynak dosyası bir .rll dosyasıdır. Kaynak Dizin bağlı SQL Server ve istemci yükleme üzerinde yapılandırılmış bir ulusal dili göre değişir. Bu örnekte, 1033 dil tanıtıcısı 0X0409, ingilizce (ABD) gösteren bir ondalık gösterimi dizinidir. Bu .rll dosyasını yerinde sonra Regsvr32 yardımcı programı'nı çağırarak Sqldmo.dll dosya kaydedebilirsiniz. Dosyayı kaydetmek için komut:
C:\Regsvr32 Sqldmo.dll
				
başarılı kayıt bildiren bir ileti almalısınız:
SQLDMO.dll içindeki DLLRegisterServer başarılı oldu.
Bu kayıt, uygulama kurulum yordamına otomatikleştirmek istiyorsanız, Regsvr32 yardımcı programıyla ilişkili çeşitli anahtarları bakın. Dosya sessizce kaydetmek için komut:
c:\regsvr32 /s- sqldmo.dll
				
Sqldmo.dll dosyasını içeren dizini belirli bir yapı istemci bilgisayarda olması gerekir; tersi durumda, aşağıdakine benzer bir hata iletisi alabilirsiniz:
LoadLibrary("C:\Winnt\System32\sqldmo.dll") başarısız oldu.
GetLastError 0x0000007e verir...
Bu hata, karşılık gelen bir "belirtilen modül bulunamadı" hata 126 (ondalık ifade edilen), hata oluştuğunu gösterir. Bu örnekte, bu dosyaya Sqldmo.rll ilişkilendirir. Diğer bir deyişle, Regsvr32 yardımcı programı Sqldmo.dll dosyayı bulur, ancak Sqldmo.rll dosya beklenen 1033 alt kullanılamıyorsa, kayıt tamamlanamıyor.

Bunu önlemek için <a0></a0>, aşağıdakileri yapın:
  1. Sqldmo.dll bulunduğu konuma "Kaynaklar" adlı bir dizin ekleyin.
  2. Bir alt dizini altında kaynakları "1033" adlı ekleyin.
  3. Bu dizinde Sqldmo.rll dosyayı kopyalayın.
Bu tamamlandığında, dizin yapısına benzer görünmelidir:
Directory that contains Sqldmo.dll\Resources\1033
Ve bu dizine 1033 Sqldmo.rll dosyasını içermelidir.

Önceden de belirttiğimiz dll dosyalarının yanı sıra, ayrıca uygun netlibrary olarak dll yüklü olduğundan emin olmak istediğiniz. Ana netlibrary dll burada gereksiniminiz vardır:
  • Yöneltme adlı: dbnmpntw.dll
  • Yuva: Dbmssocn.dll
  • Multi-Protocol: Dbmsrpcn.dll
Bunlar, Win32 bu DLL dosyaları olarak kaydetmeniz gerekir; böylece, dll tabanlı. Yalnızca DLL'lerin Microsoft Windows 95 veya Windows 98 için System32 dizini için Microsoft Windows NT veya sistem dizini içine yerleştirin.

Yukarıdaki adımları tamamladıktan sonra istemci uygulaması tarafından gerekli dosyaların devamsızlık nedeni başlangıç sorunları olmadan başlayacaktır.

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft SQL Server 2000 Standard Edition
  • Microsoft SQL Server 7.0 Standard Edition
Anahtar Kelimeler: 
kbmt kbinfo KB248241 KbMttr
Otomatik TercümeOtomatik Tercüme
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:248241  (http://support.microsoft.com/kb/248241/en-us/ )