C++ What .lib file should I include - c++

I am doing a firewall application. For that I tried some codes from codeproject HERE
But the problem is the code is not compiling, giving linking error. I am using SDK 2008. Can anyone please tell me what .lib file should I use for WFP and where can I find it ?
Thanks.

Fwpuclnt.lib is the one you need - check out the reference for the functions you are using on MSDN, they tell you in the 'Requirements' section what lib exports a given API.
You need the correct SDK to use this.

MSDN tells you on the bottom of every page describing a function which lib file is required. In the case of those firewall related functions it's fwpuclnt.lib.
If that still doesn't help, it'd be easier to help if you include the actual error messages.

Related

How to add 3rd party library in Unreal Engine 4

I am new to Unreal Engine. But here is what I planned to do. I want to an experiment project by combining socket.io with Unreal Engine 4. I know somebody may shot at me, for it already had a plugin. But I don't like graph programming at all (I prefer "real" coding)
But as I followed instruction from Installing socket.io C++ and here. It just won't work. The error told me something about File Not Found on multiple headers file from this github repo. So I tried to add a lot of things (Hopefully it won't affect the outcome). And now a tons of errors had popped up. Now they are mostly about Macro errors. And I have absolutely no idea how to fix.
The problem is I don't understand why after I include .lib files to PublicAdditionalLibraries I still needed the original file (Shouldn't it work like any other visual studio projects?)
Also how to tackle loads of errors I am facing
Thanking in advanced
Did you add your include paths with the lib headers to PublicIncludePaths array ( in the StartupModule() method ? it's gonna be needed to use methods from your lib.
Here is an exemple how to use the PublicIncludePaths
string includePath = Path.Combine(ThirdPartyPath, "opencv", "include");
PublicIncludePaths.Add(includePath);
ThirdPartyPath is a member of my module class i retrieve with my getter
Path.GetFullPath(Path.Combine(ModulePath, "../../ThirdParty/"));
I took a look at the github repo of Socket-IO-cpp lib and the only libs compiled for windows are in 32bits, take care you're not tried to compile in 64bits, or every .lib files of your libraries are in 32bits to be linked all together, in case you're using others libs.
If you got some runtime error, take a look at my answer which explain how to indicate .dll when .libs arn't enough.
Hope it helps

How to build a library from solution file in Visual Studio 2015

I am somewhat frustrated because what I am asking seems to be common knowledge and isnt explained in any tutorials:
When I download some kind of library/framework (for example assimp), and create a "solution" file with cmake. So far everything is fine. But now I have got a solution file but I want to have a .lib file, right? How can I get it? When I open the solution with VS and click "Build", there is some processing, but after the processing and some console messages, nothing really changed. Is there some kind of way to tell VS: "I want a lib file from this in C:/myDirectory"?
Would really appreciate your help!
It depends on the project properties where the exact output directory for each configuration is.
You can look it up here:

Using boost in a xll add-in created by xlw in c++

I am trying to use boost functions in a xll add-in that I am creating using xlw in c++. I have included the boost directory in the include directories section in the XLL property pages --> Configuration Pages --> VC++ Directories.
however, when I try to use the boost object "boost::" no member functions appear and in the bottom left hand side of the screen I get a message "IntelliSense: 'Unavailable for C++/CLI'"
Has anyone ever encountered this issue before and knows how to get around it?
Thanks in advance for your help
I think the Intellisense error message is not directly related to boost and xlw.
If you are using VS2010, please have a look at the following link:
Why is Intellisense "Unavailable for C++/CLI"?
You should still be able to use boost and compile even without Intellisense.

How to link OIS?

I've been searching and searching for the method to link OIS with my application. Unfortunately, I've been having issues finding anything. -lois just gives me errors, unfortunately.
Question
I need to know the proper header file for OIS, along with the right lib flag used to link it.
Other info
I'm running Arch Linux, got the package from their repos (with pacman, not yaourt), and haven't been able to link anything. Running locate in bash doesn't really give me much, either.
Update
Found out that the proper way to link OIS is via -lOIS. As far as the proper header file, I have yet to find it.
Edit
Depending on the user's configuration, the proper header file should be either of the following:
OIS.h or OIS/OIS.h.
Also, a good reference:
http://www.ogre3d.org/tikiwiki/Using+OIS

can not load a DLL file

Every time I try to load DLL (COM) I get the following error:
LDR: LdrpWalkImportDescriptor() failed
to probe for its manifest,
ntstatus 0xc0150002
I searched a lot but found nothing.
Please I really believe in this site experts and I hope to get a solution to this problem.
I know that the problem is from manifest file but I really don't know what is it and how to fix this
I use VS2010 C++ and LoadLibrary
This is the description of the error code from ntstatus.h:
//
// MessageId: STATUS_SXS_CANT_GEN_ACTCTX
//
// MessageText:
//
// Windows was not able to process the application binding information.
// Please refer to your System Event Log for further information.
//
#define STATUS_SXS_CANT_GEN_ACTCTX ((NTSTATUS)0xC0150002L)
Look in the Windows event log for further information. A very common mishap is that the CRT runtime library that the DLL needs is not installed in your machine. Post what you see there in your question if that doesn't help. Or contact the COM component vendor or author for support, best way.
Com dlls are not loaded with loadlibrary. The system loads them itself when you do CoCreateInstance for object implemented in library.
The problem seems to be that dlls on what the com dll depends are missing.
The first and second links that Google produces for this error both suggest it is commonly caused by runtime library versioning. Both predate VS2010, but I would start by looking for a similar problem. Have you tried duplicating the analysis steps described in that first post?
(Is the DLL something that you have created? If not, maybe it actually was built with VS2008 and corresponds exactly to that post? If so, maybe you can try the compilation tweaks recommended there.)