ダメ文字対策で w32-quote-process-args を nil にして自前でクォート処理するってのが前スレであったけど、
あれ windows ネイティブなプログラムに対してだとうまく動かないことがあるね

(call-process "reg" nil nil nil "query" "HKLM\\Software")

とかやるとバックスラッシュが余計にエスケープされちゃうせいかエラーになる
cygwin のプログラムの場合はバックスラッシュはエスケープする処理いれないとうまくいかない
emacs 本体でも cygwin のプログラムかどうかチェックしてクォート処理変えてたりするみたいなんだよなあ

ちなみに shell-command でシェル経由での呼び出しだと cygwin 側でうまくやってくれるからかうまくいく