How to generate a CSR without having a key file?

I am trying to run OpenSSL from Node.js in order to create a CSR. Basically, this works fine, but now I have a problem I can not solve.

Basically, what I want to do is to create a CSR from a key. The appropriate command is

$ openssl req -key private.key -new -subj "/C=DE/ST=..."

This outputs the CSR to stdout. So far, this is fine. What I now want to change is that I do not need to have the private key in a special file, instead I want to provide it from stdin. So, basically I'd like to run OpenSSL like this:

$ openssl req -new -subj "/C=DE/ST=..."

But since the -key parameter is now missing, this forces OpenSSL to create a new private key. How can I tell OpenSSL not to create a new private key, but to use the one I provide via stdin?

PS: I am aware of the option to hand over /dev/stdin to the -key parameter, but this will only work on OS X and Linux, not on Windows.