Что нового

Как запускать локальные файлы из ObjCreate("Shell.Explorer.2")?

rollex

Новичок
Сообщения
66
Репутация
1
Не открываются локальные файлы вида:
Код:
<a href="C:\Folder\091.jpg">091.jpg</a>

Код:
$winTitle = "blabla"

GUICreate($winTitle, 525, 500)
Global $hObject = ObjCreate("Shell.Explorer.2")
Global $ActiveX =GUICtrlCreateObj($hObject, 15, 165, 450-25, 300-15)
$hObject.navigate("about:blank")
GUISetState()

Local $tmp = '<html><head><style type="text/css">*{margin: 0px;font-family: segoe ui;	font-size: 9pt;}body{font-family: segoe ui;font-size: 22pt;}a{font-size: 10pt;font-weight:bold;font-style:italic;color:grey;}</style></head><body><table>'

$out = '<tr><td bgcolor="#FFFEEF">16:02:47 </td><td bgcolor="mintcream">Новый файл: <a href="C:\Folder\091.jpg">091.jpg</a>.</td></tr>'

$hObject.document.Write($tmp&$out)
$hObject.document.close()

While 1
   Sleep(100)
WEnd


Код:
onclick="window.location='C:\Folder\091.jpg'
тоже не работает.

Возможно ли как-нибудь открывать изображения во внешних вьюверах (просмотрщиках изображений) из такого объекта? Еще хотелось бы благополучно запускать исполняемые файлы таким образом.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Код:
Run
ShellExecute
 
Автор
R

rollex

Новичок
Сообщения
66
Репутация
1
Re: Как запускать локальные файлы из ObjCreate(\"Shell.Explorer.2\")?

Kaster
У меня в объекте Explorer выводится информация на основе HTML кода. И именно нажимая на ссылку в объекте Explorer должно выполнятся определенное действие.

Если выполнить приведенный мной выше код то можно увидеть ссылку "091.jpg", при нажатии на которую ничего не происходит.


Добавлено:
Сообщение автоматически объединено:

Какой бы путь к изображению ни был, все равно не происходит ничего.
 
Автор
R

rollex

Новичок
Сообщения
66
Репутация
1
Мне очень нужно решить эту проблему, поэтому еще раз прошу помощи. При нажатии на ссылки вообще ничего не происходит :(
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
попробуй так
Код:
<a href="file:///C:/Folder/091.jpg">091.jpg</a>
 

Viktor1703

AutoIT Гуру
Сообщения
1,535
Репутация
413
Или так:

Код:
$winTitle = "blabla"

GUICreate($winTitle, 525, 500)
Global $hObject = ObjCreate("Shell.Explorer.2")
Global $ActiveX =GUICtrlCreateObj($hObject, 15, 165, 450-25, 300-15)
$hObject.navigate("about:blank")
GUISetState()

Local $sHtml = '' & @CRLF & _
		'<html>' & @CRLF & _
		'  <head>' & @CRLF & _
		'    <title>0</title>' & @CRLF & _
		'  </head>' & @CRLF & _
		'  <style>' & @CRLF & _
		'    a {font-size: 10pt;font-weight:bold;font-style:italic;color:grey;}' & @CRLF & _
		'  </style>' & @CRLF & _
		'  <body>' & @CRLF & _
		'  </body>' & @CRLF & _
		'</html>'

$out = '<a>16:02:47 Новый файл: </a><a href="#" onclick="document.title = 1">091.jpg</a>'

$hObject.document.Write($sHtml & $out)
$hObject.document.close()

While 1
	$oMsg = $hObject.document.title
	Switch $oMsg
	    Case 1
		    ShellExecute('C:\Folder\091.jpg')
	EndSwitch		
		
	If ($oMsg <> 0) Then
	    $hObject.document.title = 0	
	EndIf
	
	If GUIGetMsg() = -3 Then 
		Exit
	EndIf	
WEnd
 
Автор
R

rollex

Новичок
Сообщения
66
Репутация
1
Kaster
В области объекта файл открывает, но мне нужно страница лога (по возможности) не перезагружалась. Т. е. в самом логе постоянно появляются некие ссылки на файлы, при нажатии на которые эти файлы должны открываться не в IE. Спасибо.

Viktor1703
Идея очень хороша, но не работает. Сейчас буду играться..
 
Верх