diff --git a/src/Composer/Command/DiagnoseCommand.php b/src/Composer/Command/DiagnoseCommand.php
index 401b01a46..f36ee3343 100644
--- a/src/Composer/Command/DiagnoseCommand.php
+++ b/src/Composer/Command/DiagnoseCommand.php
@@ -24,6 +24,7 @@ use Composer\Util\IniHelper;
use Composer\Util\ProcessExecutor;
use Composer\Util\HttpDownloader;
use Composer\Util\StreamContextFactory;
+use Composer\Util\Platform;
use Composer\SelfUpdate\Keys;
use Composer\SelfUpdate\Versions;
use Composer\IO\NullIO;
@@ -176,9 +177,17 @@ EOT
$finder = new ExecutableFinder;
$hasSystemUnzip = (bool) $finder->find('unzip');
+ if (Platform::isWindows()) {
+ $hasSystem7zip = (bool) $finder->find('7z', null, array('C:\Program Files\7-Zip'));
+ $windows7z = ', ' . ($hasSystem7zip ? '7-Zip present' : '7-Zip not available');
+ } else {
+ $windows7z = '';
+ }
+
$io->write(
'zip: ' . (extension_loaded('zip') ? 'extension present' : 'extension not loaded')
. ', ' . ($hasSystemUnzip ? 'unzip present' : 'unzip not available')
+ . $windows7z
);
return $this->exitCode;