|You are still (not surprisingly) missing an important part of this. When you create a DLL the build (more specifically the linker) creates two files.
The first file is the DLL itself which contains the actual code that you want to call when your program is run. This file is only ever needed at run time, it has no part in the linking process when creating your executable.
The second, equally important, is the .LIB file, which contains the names and offsets of the exported functions. This second file is the one that you must add to your project in order for the linker to satisfy all the
__delspec(dllimport) declarations. So when you add to the
Additional library directories the path to your library, you also need to add the name of the .LIB file to the
Additional Dependencies part of the
Input section in the Linker properties.
Of course, you could save yourself much of this pain by creating a static library rather than a dll, but that is probably an exercise for another day.