DbgHelp kullanarak bir DLL (ve hatta dışa aktarılmayan yöntemler) dışa aktarılan işlevleri listelemek için bir yol arıyorum (C++/Windows).
Hangi yöntemin yapabileceğini bilen var mı?
TeşekkürlerBir DLL dışa aktarılan işlevlerini listeleme
cevap
bunu yapmak için kod here yoktur. Biraz temizledim ve aşağıda gösterilen senaryoda çalıştı, fonksiyon isimlerini Kernel32.Dll
'dan aldım.
#include "imagehlp.h"
void ListDLLFunctions(string sADllName, vector<string>& slListOfDllFunctions)
{
DWORD *dNameRVAs(0);
_IMAGE_EXPORT_DIRECTORY *ImageExportDirectory;
unsigned long cDirSize;
_LOADED_IMAGE LoadedImage;
string sName;
slListOfDllFunctions.clear();
if (MapAndLoad(sADllName.c_str(), NULL, &LoadedImage, TRUE, TRUE))
{
ImageExportDirectory = (_IMAGE_EXPORT_DIRECTORY*)
ImageDirectoryEntryToData(LoadedImage.MappedAddress,
false, IMAGE_DIRECTORY_ENTRY_EXPORT, &cDirSize);
if (ImageExportDirectory != NULL)
{
dNameRVAs = (DWORD *)ImageRvaToVa(LoadedImage.FileHeader,
LoadedImage.MappedAddress,
ImageExportDirectory->AddressOfNames, NULL);
for(size_t i = 0; i < ImageExportDirectory->NumberOfNames; i++)
{
sName = (char *)ImageRvaToVa(LoadedImage.FileHeader,
LoadedImage.MappedAddress,
dNameRVAs[i], NULL);
slListOfDllFunctions.push_back(sName);
}
}
UnMapAndLoad(&LoadedImage);
}
}
int main(int argc, char* argv[])
{
vector<string> names;
ListDLLFunctions("KERNEL32.DLL", names);
return 0;
}
OP, dışa aktarılamayan sembolleri içerecek dbghelp tabanlı bir çözüm istiyor ... – wj32
Diğer araçlarla ilgiliyseniz, dışa aktarılan işlevleri listeleyen bir sayı vardır. Biri Microsoft'un dumpbin
. /exports
seçeneğini kullanın.
şerefe & hth.,
Sorgu dbgHelp Apis kullanımı hakkında. – Chubsdad
- 1. Dışa aktarmadan R paketinden dışa aktarılan nesneleri listeleme
- 2. VB6'dan DLL işlevlerini çağırma
- 3. Yeniden MFC Extension DLL, dışa aktarılan işlevlerin giriş noktalarını değiştiriyor
- 4. Dışa aktarılan bir sembolün adresi nasıl tanımlanır
- 5. Haskell dışa aktarma modülünü ek içe aktarılan modülle dışa aktar
- 6. Dışa aktarılan işlevlere birbirinden nasıl erişirsiniz?
- 7. g ++: Dışa aktarılan semboller nasıl çözülür
- 8. Dışa aktarılan gpg gizli anahtar parolasız
- 9. TipScript dışa aktarılan içe aktarma arabirimi
- 10. Python ile kaydedilmemiş .dll işlevlerini çalıştırma
- 11. Kendo Scheduler'dan dışa aktarılan PDF'de bir üstbilgi, altbilgi nasıl eklenir?
- 12. Node.js: Aynı modülde bir dışa aktarılan işlev çağırma
- 13. DLL işlevlerini kullanarak herhangi bir mükemmel darbe var mı?
- 14. Dışa aktarma işlevleri dll only ordinal
- 15. Dışa Aktarılan Blender modelinde Materyaller çalışmıyor Üç Yıldız Çalışmıyor
- 16. Dışa aktarılan const ok işlevi veya temel işlevi?
- 17. Aynı adla dışa aktarılan iki sınıfı içe aktarma
- 18. JasperReports: Excel ile dışa aktarılan sayısal verileri biçimlendirme
- 19. Android Studio'dan dışa aktarılan Apk dosyası çok büyük
- 20. Dışa aktarılan sınıfın genel mülkü özel adı kullanıyor veya kullanıyor
- 21. Kıvılcım gönderen dışa aktarılan __main__ dosyasından SparkContext'i değiştir
- 22. Eslint eklentisi tarafından dışa aktarılan ortam nasıl alınır?
- 23. Lisp, daha önce dışa aktarılan sembolleri nasıl unutur?
- 24. Düğüm Modülleri - buna referans veren değişkenlere karşı dışa aktarma işlevlerini dışa aktarma?
- 25. Unmangling C++ DLL Fonksiyon İsimleri
- 26. COM DLL dışa aktarma neden "ÖZEL" olarak işaretlenmeli?
- 27. Düzenleme Selenium (python) dışa aktarılan bir test dosyasından veri okumak için bir vaka
- 28. Linux paylaşılan kütüphanesinin dışa aktardığı işlevlerin listesini nasıl görebilirim?
- 29. Xcode 4'te "İçe Aktarılan UTI'ler" nelerdir?
- 30. Dışa aktarılan sembolleri isteğe bağlı olarak, yalnızca modifiye edilmiş bir Linux Kernel modülünde mevcutsa nasıl kullanılır?
olası yinelenen [dll ihracat işlevlerini numaralandırılamadı Win32 API?] (Http://stackoverflow.com/questions/1128150/win32-api-to-enumerate-dll-export-functions) – icecrime
Bir ayıklayıcı doesn Bir fonksiyonun ihraç edilip edilmediğine bakmak. Kod örneği burada: http://msdn.microsoft.com/en-us/library/ms679318%28VS.85%29.aspx –
Ancak PDB'lere sahip olmadığım bir duruma bakıyorum. SymLoadModuleEx bana yardım edecek mi? – Idov