Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

An open3 implementation for Ruby 1.8.x on MS Windows

branch: master

Fetching latest commit…

Octocat-spinner-32-eaf2f5

Cannot retrieve the latest commit at this time

Octocat-spinner-32 doc
Octocat-spinner-32 examples
Octocat-spinner-32 ext
Octocat-spinner-32 test
Octocat-spinner-32 CHANGES
Octocat-spinner-32 MANIFEST
Octocat-spinner-32 README
Octocat-spinner-32 Rakefile
Octocat-spinner-32 win32-open3.gemspec
README
= Description
  This library provides an Open3.popen3 implementation for MS Windows for
  the Ruby 1.8.x branch.

= Prerequisites
  Ruby 1.8.x branch only
  C++ compiler (if building from source)
   
= Installation
  gem install win32-open3                        # Build and install from source
  gem install win32-open3 --platform x86-mingw32 # Install the binary gem
   
= Synopsis
  require 'win32/open3'
	
  Open3.popen3('ver'){ |io_in, io_out, io_err|
    error = io_err.gets

    if error
      puts "Error: " + error.chomp
      exit
    end

    puts "Result: " + io_out.readlines.last.chomp
  }

= Notes
  This library is not supported on Windows 95, 98, or ME.
  This is a stripped down version of Park Heesob's win32_popen library.

= Developer's Notes
  This is a repackaging of Heesob's win32_popen module. The purpose of the
  repackaging was to create a unified API between the existing Ruby open3
  library and this library.

  The popen2 and posix_popen methods are not included in this release. They
  were originally part of the win32_popen module, but have been left out.
  They may be added back in at a later date.

  There are a couple of differences in the Windows version for open3 (which
  also apply to Open4.popen4) - the mode flag and the show flag.  For the
  mode, you can specify either 't' (text, the default) or 'b' (binary) as a
  second argument. For the show flag, you can specify either true or false,
  which will show the console window, or not, depending on the value you
  pass.  The default is false.

= Known Issues
  I have noticed that this library (and others) may segfault if you are using
  the latest version of the Ruby one-click installer and VC++ 7.0 or later.
  This appears to be an issue between VC++ 6 (which the installer was built
  with) and VC++ 7.0. Your best solution is to either upgrade your C
  compiler or to rebuild Ruby from scratch rather than using the installer.
   
= Precompiled binaries
  If you do a typical "gem install win32-open3" you will get a precompiled
  binary appropriate for your platform. If you want to build from source,
  go the project page and download, download the .zip file, and run the
  'install' Rake task from the command line.
   
= Future Plans
  Replace the current implementation with a pure Ruby version, if possible.
 
= More Documentation
  See the doc/open3.txt file for more details.
Something went wrong with that request. Please try again.