Тема: Як дебажити DLL у Visual Studio 2019 ?

Є функція яка приймає два параметри і повертає якесь число. Мені потрібно викликати цю функцію у дебаг режимі. Як це можна зробити ?

Середовище Visual Studio 2019

Якщо просто натиснути Local Windows Debugger, то буде помилка Unable to start program

//---
#define _DLLAPI extern "C" __declspec(dllexport)
//+------------------------------------------------------------------+


_DLLAPI int __stdcall fReturen3(int& res1, double& res2)
{
    return(3);
}
Гуглив...,і знаю що функція не використовує параметри

Я пробував знайти інформацію як це робити, але нажаль нічого не знайшов (можливо "не так" гуглив). Якщо ви знаєте якусь статтю на цю тему, скиньте будь-ласка.

Також прошу не звертати увагу на "непотрібність" цієї функції, знаю що вона "нічого не робить" - я учусь DLL'кі розробляти.

Раніше я писав звичайну консольну програму, а потім, коли знав що "все працює" - білдив DLL. Напевно є ж спосіб розробляти DLL'кі без явної точки входу (main) ?

2

Re: Як дебажити DLL у Visual Studio 2019 ?

Дебажте програму, що використовує цей DLL.

Подякували: Betterthanyou1

3 Востаннє редагувалося koala (24.01.2021 22:23:37)

Re: Як дебажити DLL у Visual Studio 2019 ?

можливо це підійде https://docs.microsoft.com/uk-ua/visual … ll-project

Подякували: Betterthanyou1

4

Re: Як дебажити DLL у Visual Studio 2019 ?

Я посилання пофіксив, наступного разу дотримуйтеся П.1.1 Правил.

Подякували: lucas-kane, leofun012

5 Востаннє редагувалося Betterthanyou (25.01.2021 01:28:20)

Re: Як дебажити DLL у Visual Studio 2019 ?

Вирішено

Проблем була в тому що я використовував std::string замість wchar_t
Виникла така помилка

2021.01.24 23:17:10.341    2021.01.01 00:00:00   Access violation at 0x00007FF9848EF171 read to 0xFFFFFFFFFFFFFFFF
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF130 E903000000        jmp        0x7ff9848ef138
2021.01.24 23:17:10.346    2021.01.01 00:00:00   
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF135 CC                int3       
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF138 48895C2410        mov        [rsp+0x10], rbx
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF13D 4889742418        mov        [rsp+0x18], rsi
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF142 57                push       rdi
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF143 4156              push       r14
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF145 4157              push       r15
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF147 4883EC30          sub        rsp, 0x30
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF14B 458BF8            mov        r15d, r8d
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF14E 488BF2            mov        rsi, rdx
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF151 4C8BF1            mov        r14, rcx
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF154 33FF              xor        edi, edi
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF156 4885C9            test       rcx, rcx
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF159 0F8413480300      jz         dword 0x7ff984923972
2021.01.24 23:17:10.346    2021.01.01 00:00:00   
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF15F 4885D2            test       rdx, rdx
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF162 0F840A480300      jz         dword 0x7ff984923972
2021.01.24 23:17:10.346    2021.01.01 00:00:00   
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF168 40383A            cmp        [rdx], dil
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF16B 0F8401480300      jz         dword 0x7ff984923972
2021.01.24 23:17:10.346    2021.01.01 00:00:00   
2021.01.24 23:17:10.346    2021.01.01 00:00:00      crash -->  00007FF9848EF171 403839            cmp        [rcx], dil
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF174 0F841C480300      jz         dword 0x7ff984923996
2021.01.24 23:17:10.346    2021.01.01 00:00:00   
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF17A 488D4C2450        lea        rcx, [rsp+0x50]
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF17F E83C55FFFF        call       0x7ff9848e46c0  ; fputs (ucrtbase.dll)
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF184 488B5C2450        mov        rbx, [rsp+0x50]
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF189 4885DB            test       rbx, rbx
2021.01.24 23:17:10.346    2021.01.01 00:00:00                 00007FF9848EF18C 0F84F2470300      jz         dword 0x7ff984923984
2021.01.24 23:17:10.346    2021.01.01 00:00:00   
2021.01.24 23:17:10.346    2021.01.01 00:00:00   
2021.01.24 23:17:10.346    2021.01.01 00:00:00   00: 0x00007FF9848EF171
2021.01.24 23:17:10.346    2021.01.01 00:00:00   01: 0x000000725E6F8630
2021.01.24 23:17:10.346    2021.01.01 00:00:00   02: 0x00007FF981F69540
2021.01.24 23:17:10.346    2021.01.01 00:00:00   03: 0x0000025E514261E0
2021.01.24 23:17:10.346    2021.01.01 00:00:00   04: 0x00007FF900000000
2021.01.24 23:17:10.346    2021.01.01 00:00:00   05: 0x00007FF96D964450
2021.01.24 23:17:10.346    2021.01.01 00:00:00   06: 0x00007FF6BD56D000
2021.01.24 23:17:10.346    2021.01.01 00:00:00   07: 0x00007FF96D964450
2021.01.24 23:17:10.346    2021.01.01 00:00:00   08: 0x00007FF981F60000
2021.01.24 23:17:10.346    2021.01.01 00:00:00   09: 0x0000000000000040
2021.01.24 23:17:10.346    2021.01.01 00:00:00   10: 0x00007FF981F6ACF0
2021.01.24 23:17:10.346    2021.01.01 00:00:00   11: 0x0000025E51425F01
2021.01.24 23:17:10.346    2021.01.01 00:00:00   12: 0x000000000000000A
2021.01.24 23:17:10.346    2021.01.01 00:00:00   13: 0x0074007800650074
2021.01.24 23:17:10.346    2021.01.01 00:00:00   14: 0x000000725E6F8630