2017-02-03 4 views
1

Ich habe ein C++ - Programm unter Windows 7 in Visual Studio 2015 erstellt, die EnumProcessModules verwendet. Wenn ich es in VS2015 kompiliere, ist es erfolgreich.C++/Node.js: binding.gyp Bibliothek schlägt fehl

Jetzt habe ich ein C++ - Addon in Node.js erstellt, das den obigen Code (EnumProcessModules) enthält.

, wenn ich es von der Kommandozeile kompilieren (durch Ausführen Knoten-gyp bauen), habe ich die folgende Fehlermeldung erhalten:

LINK : fatal error LNK1181: cannot open input file 'psapi.dll' [C:\Users\Yoni\W 
ebstormProjects\my_prog\build\getProcesses.vcxproj] 

psapi.dll existiert bei

C:\Users\Yoni\WebstormProjects\my_prog\ 

nahm ich es von C:\Windows\System32\

Und das ist mein binding.gyp Code:

{ 
    "targets": [ 
    { 
     "target_name": "getProcesses", 
     "sources": [ "psInfo.cc", "json.hpp" ], 
     "libraries": [ "psapi.dll" ] 
    } 
    ] 
} 

Wie löst man das?

Thx für die Hilfe.

+1

Verknüpfen Sie mit der richtigen Bibliothek in Ihrer binding.gyp? – mscdex

+0

@mscdex gut ich habe psapi.dll in meinem binding.gyp hinzugefügt, aber ich bekomme immer noch einen Fehler (siehe aktualisierte Frage) thx! –

Antwort

2

Ich glaube, Sie müssen "psapi.lib" anstelle von "psapi.dll" in Ihrer "libraries" Liste verwenden.

+0

Sie sind richtig! –