Visual Studio ile C + + kullanarak, benim için arama desteğini basacak bir API olup olmadığını merak ediyordum. Tercihen, bir calltack 5 seviyesini derinden basmak istiyorum. Windows bunu yapmama izin verecek basit bir API sağlıyor mu?Yazdır n çağrıları seviyeleri?
10
A
cevap
5
Bunu yapmanın birkaç yolu var.
USHORT WINAPI CaptureStackBackTrace(
__in ULONG FramesToSkip,
__in ULONG FramesToCapture,
__out PVOID *BackTrace,
__out_opt PULONG BackTraceHash
);
Bu FramesToCapture parametre, geri maksimum arama yığın derinliğini belirler:
basit ve hem de en güvenilir yolu, Win32 API fonksiyonudur, Bence
8
Microsoft'un DbgHelp kitaplığı sizin istediğinizi yapabileceği gibi görünüyor. Daha fazla bilgi için MSDN'de StackWalk64 işlevinin belgelerine bakın. Ayrıca, this CodeProject article yararlı olabilir.
0
DbgHelp API'sının Stackwalk ve Stackwalk64 API'sine bir göz atın.
1
Bunu hata ayıklayıcı API'sinden (dbghelp) alabilirsiniz.
İlgili konular
- 1. N boşluk karakterlerini yazdır - (f) printf formatı
- 2. Android - Mikrofon girişi seviyeleri?
- 3. n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n n bana 1 * 1 olmalıdır. bunun yerine 2 * 2
- 4. R Yazdır mesajını kullanarak mesaj yazdır
- 5. Yazdır İleti Inline Assembly
- 6. AVPlayer ile Ses Ölçüm seviyeleri
- 7. Set seviyeleri, veri içeriğini değiştirir
- 8. R'de hiyerarşi seviyeleri nasıl sayılır?
- 9. Neden yanlış sonucu yazdır?
- 10. Jersey: Asıl talebi yazdır
- 11. sqlite sorgusunu logCat'e yazdır
- 12. Highcharts: "Tümünü yazdır" düğmesi
- 13. Gruplama seviyeleri - piton pandalar içinde multiindex
- 14. Destek/Direnç Seviyeleri nasıl kullanılır? R
- 15. Yanlış seviyeleri benim dataframe olarak faktör
- 16. javascript bölünmüş ('\ n') ve değil ('\ n \ n')
- 17. Scala: sürgülü (N, N) ve gruplandırılmış (N)
- 18. PHP makbuz yazıcısı makbuzu yazıcısına yazdır
- 19. Balıkta yeni satır yazdır (programlama dili)?
- 20. 'n = n' nin amacı nedir?
- 21. Node.js'de eşzamansız çağrıları sınırlama
- 22. İzleme API çağrıları
- 23. DWARF bilgilerinden çağrıları çağırma
- 24. Oktavda çoklu çizim çağrıları
- 25. saklı yordam çağrıları
- 26. AJAX çağrıları TWIG
- 27. Groovy'de kapama tanımını/kaynağını yazdır
- 28. bağlantı Bir web sayfasına yazdır
- 29. CMD: Geçerli kullanıcının parolasını yazdır
- 30. google chrome konsolu, resim yazdır
Bu, herhangi bir sembolik bilgi üretmez. Hangi kullanım bir dizi işaretçi değeridir? –
C/C++ Programlar hiçbir zaman varsayılan olarak sembolik bilgileri içermez. Yığın dökümüne sembol eklemenin yolları için buraya bakın: http://www.drdobbs.com/architecture-and-design/post-mortem-debugging-revisited/227900186 –