本帖最后由 yinle 于 2009-7-23 20:26 编辑
我附上帮助文件里的示例 你应该就能明白,如下:; *******************************************************
; Example 5 - Set the value of an INPUT TYPE=FILE element
; Same as previous example, but with invisible window
; (security restrictions prevent using _IEFormElementSetValue)
; *******************************************************
;
#include <IE.au3>
$oIE = _IE_Example("form")
; Hide the browser window to demonstrate sending text to invisible window
_IEAction($oIE, "invisible")
$oForm = _IEFormGetObjByName($oIE, "ExampleForm")
$oInputFile = _IEFormElementGetObjByName($oForm, "fileExample")
; Assign input focus to the field and then send the text string
_IEAction($oInputFile, "focus")
$hIE = _IEPropertyGet($oIE, "hwnd")
ControlSend($hIE, "", "[CLASS:Internet Explorer_Server; INSTANCE:1]", "C:\myfile.txt")
MsgBox(0, "Success", "Value set to C:\myfile.txt")
_IEAction($oIE, "visible")
以上就是帮助文件中给网页上表单的一个FILE类型的element填值做法,
_IEFormElementSetValue函数可以直接给TEXT或者PWD类型的赋值,但不能对FILE类型进行赋值操作。 示例中的做法(采用send、controlsend输入方式)约束性很大,很容易出错,想请问有没有直接点的方法?
就是这类如邮箱里面上传附件的地方 |