idobatter/node-win32ole

Problem installing nodewin32ole

lordBreetai opened this issue · 10 comments

Hi people

I'm getting this error trying to install nodewin32ole.
Running npm install win32ole, follows:

"==========================================================="
C:>npm install win32ole
npm http GET https://registry.npmjs.org/win32ole
npm http 304 https://registry.npmjs.org/win32ole
npm WARN engine win32ole@0.1.3: wanted: {"node":">= 0.8.18 && < 0.9.0"} (current
: {"node":"v0.10.23","npm":"1.3.17"})
npm http GET https://registry.npmjs.org/async
npm http GET https://registry.npmjs.org/ref-struct
npm http GET https://registry.npmjs.org/ref
npm http GET https://registry.npmjs.org/assert
npm http 304 https://registry.npmjs.org/async
npm http 304 https://registry.npmjs.org/ref
npm http 304 https://registry.npmjs.org/ref-struct
npm http 304 https://registry.npmjs.org/assert
npm http GET https://registry.npmjs.org/util/0.10.1
npm http GET https://registry.npmjs.org/debug
npm http GET https://registry.npmjs.org/bindings
npm http 304 https://registry.npmjs.org/debug
npm http 304 https://registry.npmjs.org/util/0.10.1
npm http 304 https://registry.npmjs.org/bindings
npm http GET https://registry.npmjs.org/inherits/2.0.1

ref@0.1.3 install C:\node_modules\win32ole\node_modules\ref
node-gyp rebuild

C:\node_modules\win32ole\node_modules\ref>node "C:\Archivos de programa\nodejs\n
ode_modules\npm\bin\node-gyp-bin....\node_modules\node-gyp\bin\node-gyp.js" r
ebuild
C:\Documents and Settings\Administrador.node-gyp\0.10.23\deps\v8\include\v8.h(
184): warning C4506: no definition for inline function 'v8::Persistent v8::P
ersistent::New(v8::Handle)' [C:\node_modules\win32ole\node_modules\ref\bu
ild\binding.sln]
LINK : fatal error LNK1181: cannot open input file 'C:\Documents.obj' [C:\node_
modules\win32ole\node_modules\ref\build\binding.sln]
Project : warning PRJ0018: The following environment variables were not found:
[C:\node_modules\win32ole\node_modules\ref\build\binding.sln]
gyp ERR! build error
gyp ERR! stack Error: C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\msbuild.exe failed with exit code: 1
gyp ERR! stack at ChildProcess.onExit (C:\Archivos de programa\nodejs\node_m
odules\npm\node_modules\node-gyp\lib\build.js:267:23)
gyp ERR! stack at ChildProcess.EventEmitter.emit (events.js:98:17)
gyp ERR! stack at Process.ChildProcess._handle.onexit (child_process.js:789:
12)
gyp ERR! System Windows_NT 5.1.2600
gyp ERR! command "node" "C:\Archivos de programa\nodejs\node_modules\npm\no
de_modules\node-gyp\bin\node-gyp.js" "rebuild"
gyp ERR! cwd C:\node_modules\win32ole\node_modules\ref
gyp ERR! node -v v0.10.23
gyp ERR! node-gyp -v v0.12.1
gyp ERR! not ok
npm http 304 https://registry.npmjs.org/inherits/2.0.1
npm ERR! ref@0.1.3 install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ref@0.1.3 install script.
npm ERR! This is most likely a problem with the ref package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node-gyp rebuild
npm ERR! You can get their info via:
npm ERR! npm owner ls ref
npm ERR! There is likely additional logging output above.

npm ERR! System Windows_NT 5.1.2600
npm ERR! command "C:\Archivos de programa\nodejs\node.exe" "C:\Archivos de
programa\nodejs\node_modules\npm\bin\npm-cli.js" "install" "win32ole"
npm ERR! cwd C:
npm ERR! node -v v0.10.23
npm ERR! npm -v 1.3.17
npm ERR! code ELIFECYCLE
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! C:\npm-debug.log
npm ERR! not ok code 0
C:>
"==========================================================="

Im not sure what it means. Is it a problem with nodejs version??
Some body is experiencing the same issue?
VS 2008 Professional and Python 2.7 is installed on my system.

Help please.

Thanks in advance.
lordBreetai

I have the same issues on my machines. I don't have VC++ 2008 installed.
Could please explain how to install your pre-built module?

That works for me too, thanks.

It's wonderful to be able to tap into legacy code from nodejs this way.
As the description of the module suggests it is supposed to be able to make asynchronous calls but how can that be done? If I call a method on a new win32ole object, it blocks until the result is available and returns the value. Is there a way to supply a callback method? The only thin I can find in the source is an error callback.

Thanks Antony. I'll play with the nodejs cluster module to try to overcome the blocking nature of COM calls and see what that'll bring me.

@Antony74 can you make a brief explanation on how to use the win32ole-dev package?

we have still the same error after 1 year :/

@Antony74 | @bitsplitter Hi guys,I am havin the sam issue,could you please help with the file,the link is inactive

This link->> https://github.com/Antony74/TransportManager/tree/master/sys/server/node_modules

Sorry, I can't help you as I removed node-win32ole from my project in January 2015 and no longer work with it. It probably won't build for you because the C++ bindings for nodejs have changed several times node-win32ole was last released.

We'd probably prefer our server application to be talking to another server application via nodemailer or similar.

However, if you're stuck with talking to a desktop application (Outlook), then I suggest writing a script to do just that in another scripting language such as JScript that can make use of COM then running it (wscript.exe myJScript.js) from your nodejs application.

My problem was Access databases, not Outlook mail, so I'm now using node-adodb which works exactly as I've just described. NodeJs runs WScript with some JScript that uses COM (ado) to query and update an Access Database.