Программное открытие Google Maps

В моих приложениях есть небольшая функция, которая позволяет пользователю нажать кнопку, чтобы сопоставить адрес. Вероятно, это сделано в куче и куче приложений. И я не знаю, тот ли это форум, но . . . Я просто создаю соответствующую строку и использую ShellExecute (в Shell32.dll), чтобы открыть браузер. Таким образом, URL-адрес, который я создаю, может быть https://www.google.com/maps/place/8000+Avalon+Blvd,+Alpharetta,+GA+30009

Раньше это работало с Chrome, но вчера я обнаружил, что он не работает и фактически полностью выводит Chrome из строя. После того, как он пытается отобразить страницу, но затем выдает сообщение об ошибке (код ошибки: STATUS_STACK_BUFFER_OVERRUN), я не могу открыть ни одну страницу, даже когда я просто набираю ibm.com или что-то в этом роде. Но я могу скопировать URL-адрес (опустив дополнительные элементы, которые Chrome или Карты пытаются добавить, а это, по-видимому, в основном координаты GPS), закрыть Chrome, снова открыть его, затем вставить URL-адрес, и все работает отлично. Я подтвердил, что исходный URL-адрес для открытия Chrome — это ТОЧНО то же самое, что я ввожу вручную. Он работает, если сделать это вручную, но не работает, если сделать это программно. Я переключил свой браузер по умолчанию на Bing, и та же самая команда работает просто великолепно. Я также заметил, что, похоже, это работает, если Chrome уже запущен, но если его нужно запустить, я получаю сообщение об ошибке. У кого-нибудь есть идеи, почему использование ShellExecute не удастся и только в Chrome (еще не тестировал FireFox или какой-либо другой).

0 ответов

Другие вопросы по тегам