I've used Dependency Walker program and found that my program misses following dll: wlanapi.dll (+ several other dlls).

However this dll is located here:


So how can I know why the dll can not be found? Can I print "all visible to system dlls" or something like that?

  • 2
    Just because it exists doesn't mean that's the one that its linked to – Cole Johnson Nov 26 '12 at 21:01
  • The dll is not in a place where the program knows where to look. Try adding that dll location to your PATH. – MaQleod Nov 26 '12 at 21:02
  • @MaQleod this is the dll from Microsoft Visual C++ 2012 Redistributable Package, i expect that installer made all necessary changes in system. – Oleg Vazhnev Nov 26 '12 at 21:19
  • Is this a domain computer? If so, there may have been policies in place that caused it to not be able to edit the PATH variable or register the dll properly. – MaQleod Nov 26 '12 at 21:21
  • @MaQleod this is regular Windows Server 2008 R2 machine. Workgroup machine. hmm... probably i should try install Microsoft Visual C++ 2012 Redistributable Package as administrator... – Oleg Vazhnev Nov 26 '12 at 21:23

The DLL being within winsxs (the repository of all files possibly available to Windows or dot NET application) but nowhere else means that the underlying feature if not presently installed or more exactly enabled on that particular Windows 7 or 2008R2 machine. This can be solved by enabling it through the dedicated "Windows feature enabling or disabling" control panel.

Searching Microsoft-Windows-Wlansvc through Google pointed me to Technet and a lot more information about this "component" or feature.

| improve this answer | |

Sounds like the dll may not be registered. Go into the command prompt (Start -> run -> cmd) then go to the path where that file is at by typing the following in the command prompt:

cd c:\Windows\winsxs\amd64_microsoft-windows-wlansvc_31bf3856ad364e35_6.1.7601.17514_none_fa6a47c21b85ab79\

once there type

regsvr32.exe wlanapi.dll

You could copy the dll files into the c:\windows\system32 directory to make it a little easier so you don't have to type as much if you'd like.

Another solution to this may be to copy the dll files that the program is missing into the directory where that program is installed but that doesn't always work.

| improve this answer | |
  • such error: "The module "wlanapi.dll" was loaded ut the entry-point DllRegisterServer was not found. Make sure that "wlanapi.dll" is a valid DLL or OCX file and them try again." – Oleg Vazhnev Nov 26 '12 at 21:21
  • i don't think coping dll is a good idea. Windows supposed to find them itself in winsxs. that's what for this folder exist. – Oleg Vazhnev Nov 26 '12 at 21:22
  • Oh, didn't realize it was a server machine till you posted that a few mins ago up there. I didn't realize the dll system worked differently on those versions of windows. I found this, it might help. social.msdn.microsoft.com/Forums/en-US/vbinterop/thread/… Someone mentioned "This behavior may occur if you try to register a DLL by using Regsrv32 while you are logged on using an account that does not have administrative credentials." If this is the problem, maybe simply logging in as administrator might make whatever you're trying to do work. – Codezilla Nov 26 '12 at 21:34
  • hm... i think the root of the problem is that i'm missing much more important MSVCR110.DLL and MSVCP110.DLL. I've installed "Microsoft Visual C++ 2012 Redistributable Package" (and reinstalled many times) but dll still can not be found. it supposed to be there but i can not find them in C:\Windows. i do not know how to trobleshoot. I probably can copy dll's from another machine... – Oleg Vazhnev Nov 26 '12 at 21:42
  • You can also search google for "download drivername" and then pop it in the c:\windows\system32 folder and try the app again. This has worked for me in the past. You're worrying more about copying dll's then I think you should be. Unless you're over writing files I wouldn't worry about it. Moving them is a different matter possibly. – Codezilla Nov 26 '12 at 21:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.