Доброго дня/утра/вечера.
Перелазил кучу форумов и наших и зарубежных и не нашёл. :blink:
Нужно поменять user-agent,
Такое решение не подходит, потому что в данном случае user-agent прописывается только в первом запросе, в фоновых запросах или при перезагрузке страницы будет участвовать базовый user-agent
	
	
	
	
  
    
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
Пробовал изменить user-agent через реестр. Не полоучилось. Меняется только частично. Похоже что это когда-то работало но не сейчас. :-X
Для решения данной задачи нашел такой код, но проблема в том что мне не нужно создавать GUI.
	
	
	
	
  
    
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
Как сделать так, чтобы с помощью
	
	
	
	
  
    
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
поменять user-agent при обычном
	
	
		
			
			
			
			
			
		
	
	
	
		
	
	
		
	
Пробовал вызывать функцию _SetUserAgent($agent) в разных участках кода, до/после _IECreate() - результат отрицательный.
Есть идеи как решить данную задачу?
UPD:
Протестировал вариант с GUI из примера выше. Он вообще ни как не подходит. Потому что JS в нем не работает. Точней работает, но запросы не шлёт, да и в целом работает не корректно.
Попробую погуглить на счёт JS в GUI.
			
			Перелазил кучу форумов и наших и зарубежных и не нашёл. :blink:
Нужно поменять user-agent,
Такое решение не подходит, потому что в данном случае user-agent прописывается только в первом запросе, в фоновых запросах или при перезагрузке страницы будет участвовать базовый user-agent
			
				Код:
			
		
		
		$oIE = _IECreate()
$oIE.navigate('http://2ip.ru/', 2, '', '', 'User-Agent: My super special user agent string.')
	Пробовал изменить user-agent через реестр. Не полоучилось. Меняется только частично. Похоже что это когда-то работало но не сейчас. :-X
Для решения данной задачи нашел такой код, но проблема в том что мне не нужно создавать GUI.
			
				Код:
			
		
		
		#include <IE.au3>
GUICreate("Test User-Agent String", 700, 500)
_IEErrorHandlerRegister()
$oIE = _IECreateEmbedded()
GUICtrlCreateObj($oIE, 10, 10, 680, 480)
_SetUserAgent('User-Agent: My super special user agent string.')
_IENavigate($oIE,"http://2ip.ru/")
sleep(1000)
GUISetState()
While GUIGetMsg() <> -3
WEnd
Func _SetUserAgent($agent)
    $agentLen = StringLen($agent)
    Dim $tBuff = DllStructCreate("char["&$agentLen&"]")
    DllStructSetData($tBuff, 1, $agent)
    $chk_UrlMkSetSessionOption = DllCall("urlmon.dll", "long", "UrlMkSetSessionOption", "dword", 0x10000001, "ptr", DllStructGetPtr($tBuff), "dword", $agentLen, "dword", 0)
EndFunc
	Как сделать так, чтобы с помощью
			
				Код:
			
		
		
		DllCall("urlmon.dll", "long", "UrlMkSetSessionOption", "dword", 0x10000001, "ptr", DllStructGetPtr($tBuff), "dword", $agentLen, "dword", 0)
	поменять user-agent при обычном
			
				Код:
			
		
		
		$oIE = _IECreate()
	Пробовал вызывать функцию _SetUserAgent($agent) в разных участках кода, до/после _IECreate() - результат отрицательный.
Есть идеи как решить данную задачу?

UPD:
Протестировал вариант с GUI из примера выше. Он вообще ни как не подходит. Потому что JS в нем не работает. Точней работает, но запросы не шлёт, да и в целом работает не корректно.
Попробую погуглить на счёт JS в GUI.