6

Недавно я обнаружил, что могу запустить PuTTY, но окно не отображается. Панель задач имеет замазку как работающее приложение, и я могу щелкнуть по ней правой кнопкой мыши, чтобы получить опцию перемещения и закрытия.

Если я выберу «переместить», я получу схему окна PuTTY, чтобы переместиться, но окно конфигурации фактической замазки по-прежнему отсутствует.

Если я удаленного рабочего стола на той же машине, я могу запустить PuTTY без каких-либо проблем.

10 ответов10

7

Щелкните правой кнопкой мыши файл putty.exe и на вкладке совместимости установите флажок «Отключить композицию рабочего стола». Это сработало для меня. Он отключает тему Windows Aero во время работы putty. Это раздражает, но работает.

3

Единственное верное решение этой проблемы - обновить последнюю версию PuTTY (> = 0,65) с основного веб-сайта PuTTY.

ПРИМЕЧАНИЕ: 0,64 (текущий "стабильный" по состоянию на 2015-06-25) может не работать, вам нужно> = 0,65. Проверьте предварительную версию или разработку.

Причина этой проблемы в том, что PuTTY неправильно настраивал и отображал свое окно, оно работало больше случайно, чем дизайн, и "ошибка", из-за которой он вообще появлялся, была исправлена недавним Центром обновления Windows. Это означало, что ошибка больше не работает и окно PuTTy больше не отображается должным образом.

Из этого журнала заездов PuTTY

... недавнее обновление Vista (все отчеты включают KB3057839) привело к тому, что это больше не работает: на обновленном компьютере Vista, в некоторых конфигурациях рабочего стола, кажется, что любая попытка поиграться с WM_SETREDRAW во время настройки диалога может покинуть диалоговое окно в действительно бесполезном невидимом состоянии - окно физически находится там (вы можете видеть его запись на панели задач, и указатель мыши изменяется при перемещении туда, где находятся его поля редактирования), но на 100% прозрачен.

Так что теперь мы делаем что-то более разумное. <snip> в конце установки мы показываем окно разумным способом, с помощью одобренного docs вызова ShowWindow ().

Похоже, что (на одной машине, на которой я до сих пор тестировал), чтобы исправить проблему невидимого окна Vista, он также должен быть более совместимым с API и, следовательно, более безопасным в будущем.

2

Окно PuTTY есть, хотя оно получает "прозрачное" свойство по какой-то поддельной причине. Обходной путь, более легкий, чем те, которые я видел до сих пор, - вернуть видимость назад.

Следующие методы работают на 32-битной Vista Home Premium, SP2. YMMV.

Метод 1, короткий скрипт AutoHotkey:

; show_PuTTY.ahk
; Must be launched when putty.exe is already running

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

WinWait, PuTTY Configuration
WinSet, Transparent, 255

Метод 2, скрипт Powershell, вызываемый из командного файла (не требует никаких дополнительных программ):

# unhide.ps1

$definition = @"    
      [DllImport("user32.dll")]
      static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

      [DllImport("user32.dll")]
      static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);

      public static void ShowWin()
      {
         IntPtr hwnd = FindWindow("PuTTYConfigBox", "PuTTY Configuration");
         SetWindowLong(hwnd, -20, 524288);
      }
"@

add-type -MemberDefinition $definition -Namespace my -Name WinApi

do {}
until(Get-Process putty -ErrorAction SilentlyContinue | Select -p Responding)

[my.WinApi]::ShowWin()

Затем вы можете вызвать его из командного файла (например, PuTTY.bat), расположенный в том же положении, где лежит unhide.ps1 :

@echo off

rem PuTTY.bat

start "" "%ProgramFiles%\PuTTY\putty.exe"
rem Use %ProgramFiles(x86)% for 32 bit PuTTY on 64 bit Vista

powershell.exe -ex remotesigned -f unhide.ps1

Пожалуйста, смотрите кредиты на комментарий ниже.

1

Я попробовал несколько вещей. я отключил управление рабочим столом драйвера устройства отображения ATI и сетку. это не имело значения. Я вышел из диспетчера сетки окон aquasnap pro. Это не имело никакого значения. С менеджером рабочего стола (опция Hydravision Multiple Desktops) я заметил некоторые странные вещи, например, я мог запустить putty на одном рабочем столе, а затем он появился бы на другом рабочем столе. Например, я бы запустил его на рабочем столе 1, а затем он был бы виден на рабочем столе 2, но не на рабочем столе 1.

В конце концов, я отключил Windows Aero из панели управления \ Персонализация. Если вы используете Windows, aero Window Color and Appearance даст вам возможность "открыть классические свойства внешнего вида". Выберите это, а затем выберите Windows Vista Basic в качестве цветовой схемы. Нажмите "Применить", и окно замазки снова станет видимым. Надеюсь, это кому-нибудь поможет.

1

Предварительная версия 0.65 для PuTTY работает в Vista с Aero. http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

0

У меня была такая же проблема в Windows Vista. Я только что установил альтернативный китти ( http://kitty.9bis.net/ ), и он работал нормально.

0

С той же проблемой я столкнулся недавно в Windows Vista Ultimate. Изменил цвет монитора на 16 бит, и у меня это сработало. Попробуй это.

Идти к

Панель управления-> Персонализация-> Настройки дисплея -> Монитор и установите значение цвета как ** Среднее 16 бит **.

Примените настройки и запустите Putty. Это начало работать для меня. Нашел похожее решение из окна Putty не отображается

0

Я обновил до последней версии разработки PuTTY с http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html, и я снова могу использовать PuTTY на моей 32-битной машине с Windows Vista.

0

Я тоже заметил эту проблему. При выборе исполняемых файлов Putty из меню «Пуск» у меня был Pageant. Я начал это, не совсем уверен, что он сделал.
Он запустил задачу в панели задач в правом нижнем углу. Когда я щелкнул правой кнопкой мыши на нем, у него было несколько вариантов, и один из них был сохраненных сеансов, один из которых был один для моего сервера. Я нажал на это, и он открыл мой обычный сеанс SSH. Он также отображается на нижней панели задач (слева), в то время как попытка запуска замазки из меню «Пуск» все еще оставляет задачу с именем «Конфигурация PuTTY». Закрытие неудачного не мешает запущенному сеансу. Не совсем уверен, почему это так, но похоже, что это способ обойти проблему.
Я использую Windows Vista с автоматическими обновлениями. Замазка релизная 0.64.

6/17/15

0

http://www.chiark.greenend.org.uk/~sgtatham/putty/wishlist/vista-update-breaks-config.html описывает то, что мы (апстрим) знаем до сих пор об этой проблеме.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .