疑问,GetProcAddress后,可以先FreeLibrary再使用函数指针?解决方法

疑问,GetProcAddress后,可以先FreeLibrary再使用函数指针?
一开始我是按照常规写法的:
LoadLibrary();
MyFunc f = GetProcAddress();
....
...使用完MyFunc函数
....
FreeLibrary();


后来,我发现,即使改成Get函数指针后立即FreeLibrary也不会报错,即
LoadLibrary();
MyFunc f = GetProcAddress();
FreeLibrary();
....
...使用MyFunc函数
....

可是我搜索了下,发现没有像我这么用的,都说要使用完函数后再释放动态连接库。但我自己的程序先释放后使用确实没有任何问题。

我获取的是user32.dll中的SetLayeredWindowAttributes函数。

哪位兄弟解释一下其中的原理?

------解决方案--------------------
应该不行吧
FreeLibrary,并不会立即卸载dll,而是把dll的引用计数减1,直到引用计数为0,才真正卸载。

楼主的举例没有代表性。
试试新建一个dll,然后再这样测试。