Я пытаюсь понять и предвидеть, как ссылаться на функции в DLL.
Когда мы ссылаемся на некоторые функции в нескольких библиотеках DLL, к которым мы обращаемся, для выполнения некоторых вычислений, в некоторых функциях мы просто используем имя процесса в качестве аргумента lpProcName
(например, "my_calc_function"
). Однако в некоторых других функциях (для другой DLL) мы должны добавить различные декорации к lpProcName
(например, "?my_other_calc_function@@YA...."
)
в одном случае
m_lpfn_my_calc_function_pointer = (lpfn_my_calc_func)::GetProcAddress(m_hOneDll,"this_address_works");
в другом случае
m_lpfn_my_other_calc_function_pointer = (lpfn_my_calc_func)::GetProcAddress(m_hAnotherDll,"?this_address_has@@YAXNPEAN00PEAH@Z");
Обе эти работы, однако, я хотел бы понять, что означают художественные оформления и где я могу ссылаться на них, чтобы я мог предвидеть их, когда я пишу свой код.