diff --git "a/C:\\Users\\Veronica\\AppData\\Local\\Temp\\com3218.tmp\\compass-HEAD-left.inc" "b/D:\\temp\\compass\\compass\\compass.inc"
index 9224f03..cebbf41 100644
--- "a/C:\\Users\\Veronica\\AppData\\Local\\Temp\\com3218.tmp\\compass-HEAD-left.inc"
+++ "b/D:\\temp\\compass\\compass\\compass.inc"
@@ -10,7 +10,8 @@ function _compass_check_path($path) {
   if (!is_file($path)) {
     $errors[] = t('The specified Compass path %file does not exist.', array('%file' => $path));
   }
-  if (!$errors && !is_executable($path)) {
+  // Don't check executable in Windows plaform (it's always false!)
+  if (!$errors && !is_executable($path) && compass_detect_platform() != 'Windows') {
     $errors[] = t('The specified Compass path %file is not executable.', array('%file' => $path));
   }
   if ($errors && $open_basedir = ini_get('open_basedir')) {
@@ -66,15 +67,6 @@ function _compass_exec($command, &$output, &$errors) {
   // paths are interpreted correctly.
   $drupal_path = $_SERVER['DOCUMENT_ROOT'] . dirname($_SERVER['SCRIPT_NAME'] ? $_SERVER['SCRIPT_NAME'] : $_SERVER['SCRIPT_FILENAME']);
 
-  // TODO determine whether this module has any hope of ever working on Windows
-  if (strstr($_SERVER['SERVER_SOFTWARE'], 'Win32') || strstr($_SERVER['SERVER_SOFTWARE'], 'IIS')) {
-    // Use Window's start command to avoid the "black window" from showing up:
-    // http://us3.php.net/manual/en/function.exec.php#56599
-    // Use /D to run the command from PHP's current working directory so the
-    // file paths don't have to be absolute.
-    $compass_path = 'start "window title" /D' . escapeshellarg($drupal_path) . ' /B ' . escapeshellarg($compass_path);
-  }
-
   $descriptors = array(
     0 => array('pipe', 'r'), // stdin
     1 => array('pipe', 'w'), // stdout
@@ -91,8 +83,15 @@ function _compass_exec($command, &$output, &$errors) {
   if (!empty($gem_path)) {
     $env['GEM_PATH'] = variable_get('compass_gem_path', NULL) . ':' . shell_exec('gem env GEM_PATH');
   }
-
-  if ($h = proc_open($compass_path . ' ' . $command, $descriptors, $pipes, $drupal_path, $env)) {
+  
+  if (compass_detect_platform() == 'Windows') {
+    $h = proc_open($compass_path . ' ' . $command, $descriptors, $pipes, $drupal_path);
+  }
+  else {
+    $h = proc_open($compass_path . ' ' . $command, $descriptors, $pipes, $drupal_path, $env);
+  }
+  
+  if ($h) {
     stream_set_blocking($pipes[1], 0);
     stream_set_blocking($pipes[2], 0);
 
@@ -126,3 +125,11 @@ function _compass_exec($command, &$output, &$errors) {
   }
   return FALSE;
 }
+
+// Detect windows platform
+function compass_detect_platform() {
+  if (strstr($_SERVER['SERVER_SOFTWARE'], 'Win32') || strstr($_SERVER['SERVER_SOFTWARE'], 'IIS')) {
+    return 'Windows';
+  }
+}
+ 
\ No newline at end of file
