Добавить реферер в заголовок при использовании ShellExecute

Я использую ShellExecute, чтобы открыть браузер по умолчанию пользователя для определенного веб-сайта.

Я хотел бы добавить поле реферера к URL-адресу.

Возможно ли это сделать, продолжая использовать ShellExecute?

Если нет, есть ли другие предложения, чтобы заставить браузер пользователей по умолчанию открывать URL-адрес с помощью реферера?


person RobertFrank    schedule 21.02.2011    source источник


Ответы (1)


Реферер является частью протокола HTTP. ShellExecute открывает приложение, которое затем обрабатывает URL-адрес, отправляя HTTP-запрос. Это приложение указывает реферера.

Самое лучшее, что вы могли бы сделать, это включить что-то в URL-адрес и обработать его на стороне HTTP-сервера (предположительно, вы контролируете серверную часть).

person David Heffernan    schedule 21.02.2011
comment
Черт, Дэвид, я боялся этого. Я считаю, что Indy позволяет мне заполнить заголовок реферером. Есть ли способ запустить процесс с Indy, а затем каким-то образом открыть результаты в окне браузера, принадлежащем Delphi (а не в браузере пользователя по умолчанию)? - person RobertFrank; 21.02.2011
comment
@Robert Я думаю, вы запутались, если хотите, чтобы URL-адрес открывался в настоящем браузере. Вы можете собрать решение на основе TWebBrowser, которое будет размещено внутри вашего приложения. Не уверен, поможет ли это вам, потому что я не знаю, какова ваша конечная цель! - person David Heffernan; 21.02.2011
comment
Спасибо, Дэвид, как обычно за помощь. Мне только что пришло в голову, что я могу зайти на сайт (который я не контролирую) в Indy, чтобы получить кредит в их журналах за отправку трафика. Я проигнорирую результат. А затем, как я делал, просто раскошелиться на URL-адрес сайта без информации о реферере... Спасибо, что помогли мне подумать об этом. - person RobertFrank; 21.02.2011
comment
@robert, просто чтобы быть в безопасности, вы можете проверить это на сайте, на который вы нажимаете. - person David Heffernan; 21.02.2011