Member 12650130 Ответов: 2

Как настроить положение экрана проводника файлов, Открытого с помощью shell в VB


Я могу открыть файл в проводнике Windows (explorer.exe), используя раковину ("explorer.exe") в VB2013. Это прекрасно работает, но мне нужно расположить это окно Проводника в определенном месте на моем экране. Команда оболочки действительно показывает " местоположение "в качестве опции после строки" '...exe", но я не могу заставить это работать. Есть идеи? Мне нужен самый простой код, чтобы сделать это!

Что я уже пробовал:

Пытался заставить "локацию" работать, но безуспешно!

0x01AA

Взгляните на этот ответ Биллвудраффа, я думаю, что вы можете решить свою просьбу с его помощью:
Во множественном должности, обязанности и достижения[^]

2 Ответов

Рейтинг:
2

Member 12650130

Привет Дэйв,
Большое спасибо за Ваш быстрый ответ. Как только я опубликовал этот вопрос, я огляделся в интернете, чтобы посмотреть, смогу ли я найти еще какие-нибудь данные по этому вопросу. Через некоторое время я понял, что решение будет намного сложнее, чем я могу понять. Я только на "начальном" уровне, я думаю.

Сказав это, я полностью понимаю ваш письменный ответ, но понятия не имею, как все это закодировать - так что я сдаюсь! Я только хотел, чтобы мое приложение VB открывало два браузера в формате параллельных столбцов, чтобы сэкономить несколько секунд, нажав на кнопку "Мой компьютер" или что-то подобное.

Еще раз спасибо за ответ.


Рейтинг:
0

Dave Kreskowiak

Свойство "location" не позволяет расположить окно в определенных координатах.

Вы должны запустить окно, затем вы должны использовать функции Win32 API FindWindow или EnumWindows и SetWindowPos, чтобы получить дескриптор окна, а затем отправить сообщения в это окно, чтобы расположить окно и изменить его размер, если это необходимо.

Это не совсем просто для тех, кто не имеет никакого опыта работы с Win32 API.

Окно должно появиться на экране, прежде чем вы сможете получить его оконную ручку. Только тогда вы сможете переместить его и изменить размер. Это покажет пользователям какое-то мерцание, когда окно появляется там, где вы этого не хотите в первую очередь. Нет никакого способа обойти это.


Возможно, лучшим решением будет не запускать отдельный процесс, а реализовать необходимую функциональность в своем собственном коде.