Hi,
Thanks very much for the message.
There is some confusion that I will try to explain.
Arduino has a library system as standard and a user library system where you can put shared libraries downloaded from the internet or created by you. These libraries normally exist in "my documents\arduino\libraries". This is where both arduino and visual micro will look for user libraries unless you have changed your "sketch book" location which defaults to "my documents\arduino"
To use an Arduino library you only ever include the header files without any path qualifier such as #include "libName.h"
Arduino and Visual Micro can automatically resolve library locations in background and users never need to specify library paths. This is easier for users but also means the libraries can always be located even when the sketch book folder is moved. It's an Arduino thing and Visual Micro follows the same rules.
That all makes sense for sharing published libraries between projects but it doesn't make it very easy to develop libraries or have different library versions per project. In this case Visual Micro provides some additional capabilities to assist and it is there capabilities you have used by creating a local project library. The reason why the lib is buried deep is to avoid users from seeing the library sources as part of the project code. As you are now requesting, Arduino libraries can not reference a specific project therefore it would be confusing to consider the part of a project.
Furthermore Visual Micro is designed so that, even when buried deep, the libraries are #included without paths in the same way that normal shared arduino libraries are #included. This means you can copy (publish) your libraries to the "sketchbook\libraries" folder and share them with other projects. When you add libraries or files to the sketch book\libraries folder, if a project is open that wants to use the new library, click the Rescan button on the Micro Explorer (avoids need to restart the ide before the new library will be detected).
Having local project libraries allows visual micro to more easily detect changes (edits), working outside of the standard Arduino shared and cached library system. Other options are under consideration to help in this area such as allowing multiple projects to shared editable un-cached libraries.
Hopefully this explains some things but please feel free to ask for clarification or discuss further
Finally your arduino sketch book paths will look like this after you copy/publish
This is an arduino library structure using your files. Same as visual micro gives you but in a different place and without the test .ino code and project files. Just the library which must have a .h and folder of the same name
[sketch book folder]\libraries\NetworkServerLib\library.properties
[sketch book folder]\libraries\NetworkServerLib\src
[sketch book folder]\libraries\NetworkServerLib\src\NetworkServerLib.cpp
[sketch book folder]\libraries\NetworkServerLib\src\NetworkServerLib.h
[sketch book folder]\libraries\NetworkServerLib\src\my_sub_folder\private_stuff.h
Other cpp and .h files are allowed in the \src folder or sub folders below \src and they must be #includes with relative paths if in sub folders. #include "my_sub_folder\private_stuff.h"