Posts: 138
Threads: 32
Joined: Jun 2018
Reputation:
3
Location: USA
I am doing a check in TController.IWServerControllerBaseBrowserCheck( aSession: TIWApplication; var rBrowser: TBrowser);
var
luas : String; // UserAgentString
begin
luas := Lowercase(ASession.Request.UserAgent)
I now get an accessviolation when I try to access the UserAgent.
Any ideas?
Posts: 289
Threads: 0
Joined: Mar 2018
Reputation:
29
Location: Franca-São Paulo-Brasil
Hi, try:
luas := Lowercase(WebApplication.Request.UserAgent);
Posts: 138
Threads: 32
Joined: Jun 2018
Reputation:
3
Location: USA
Using Webapplication still causes the av.
Maybe there is a simpler way for what I am trying to do. See the code below. It is really just trying to do an additional check for crawlers.
else if (Pos('baidu', luas) > 0)
or (Pos('yandex' , luas) > 0)
or (Pos('naverbot' , luas) > 0)
or (Pos('yeti' , luas) > 0)
or (Pos('seznambot' , luas) > 0)
or (Pos('slurp' , luas) > 0)
or (Pos('teoma' , luas) > 0)
or (Pos('moget' , luas) > 0)
or (Pos('ichiro' , luas) > 0)
or (Pos('sogu' , luas) > 0)
or (Pos('bot' , luas) > 0)
or (Pos('spider' , luas) > 0) then
begin
ASession.Terminate('403 Forbidden. Crawling this site is not allowed!');
rBrowser.destroy;
rBrowser := TInternetExplorer.Create(9);
//Log this session including the uas so you have a record of it
end
Posts: 138
Threads: 32
Joined: Jun 2018
Reputation:
3
Location: USA
Thanks for the explanation. I will remove the old code since it is no longer necessary.