After upgrading from drush 7 to 8 with multisites, using drush from site directory cannot find drupal 7 (Windows) Previously with drush 7, I could cd to the site directory (e.g. sites/example1.com) and perform drush commands (e.g. drush st). Now with drush 8, unless I specify the root in the drush command, it cannot bootstrap past level 0:

$ drush st
 PHP configuration      :  C:\wamp64\bin\php\php7.1.9\php.ini
 PHP OS                 :  WINNT
 Drush script           :  C:/Users/Dan/AppData/Roaming/Composer/vendor/drush/drush/drush.php
 Drush version          :  8.1.18
 Drush temp directory   :  C:\Users\Dan\AppData\Local\Temp
 Drush configuration    :
 Drush alias files      :


$ drush st -r c:/wamp64/www/drupal7
           Drupal version                  :  7.64
 Site URI                        :  http://example.com
 Database driver                 :  mysql
 Database hostname               :  localhost
 ....


I do have a sites/sites.php file:

 &lt;?php 
 $sites = [
    'dev.example1.com' =&gt; 'example1.com',
    'dev.example2.com' =&gt; 'example2.com',
    'dev.example3.us' =&gt; 'example3.us',
 ];


Local site sites\example1\drushrc.php file:

&lt;?php
$options['l'] = "http://dev.example1.com";
$options['r'] = 'c:/wamp64/www/drupal7';


Without the -r root option, drush doesn't load the sites.php or the drushrc.php.

Drush is installed globally using composer. It was not installed as part of drupal 8. 

MORE INFO: Oddly, drush 8 is working with drupal 8 in a multisite directory.
It appears that drush 8 does not support drupal projects that were not built with composer. Drush 7 does not have this requirement. I added this composer.json to the drupal 7 root directory:

{
  "require": { 
    "drush/drush": "~8.0"
  }, 
  "extra": {
    "installer-paths": {
       ".": [ "type:drupal-core" ]
    } 
  } 
}


I found this in an issue for project drupal-finder, which seems to be used by the Drupal 9 Drupal Launcher. I'm guessing that drush 8 has similar code.