Hide enhancement function inside DLL

I am working on a DLL project and I use the BOOST library, I also use the module definition file to avoid manipulating the compiler name so that it can be easily called from this library. But my problem is that there are also many exported areas of BOOST functions. I use a DLL viewer to look at the function that my DLL provides, and, to my surprise, there are a lot of BOOSTs. (The function I want to export also exists, so there is no problem), any idea why this is happening? (I don't have enough reputation for posting images, any suggestions, how can I do this? Pastebin or something else?)

`GetNameOfUsbIf     Exported Function   
GetNumberOfUsbIfs   Exported Function   
Initialize          Exported Function   
int __stdcall SET_SYSTEM_NOTIFY_CALLBACK(void (__cdecl*)(enum SYSTEM_EVENT_MSP))        Exported Function   
private: static class boost::archive::detail::extra_detail::map<class boost::archive::binary_iarchive> & __cdecl boost::serialization::singleton<class boost::archive::detail::extra_detail::map<class boost::archive::binary_iarchive> >::get_instance(void)       Exported Function   
private: static class boost::archive::detail::extra_detail::map<class boost::archive::binary_iarchive> & boost::serialization::singleton<class boost::archive::detail::extra_detail::map<class boost::archive::binary_iarchive> >::instance     Exported Function`  

I use a prefix __declspec(dllexport)for my function that I want to export, which is controlled by the compiler flag. This is above, this is a copy of the insert text from dllViewer Any suggestions that I am missing?

+4
source share

Source: https://habr.com/ru/post/1610411/


All Articles