dionysus 发表于 2005-4-19 19:38:54

怎么读取在头文件中已经赋值的变量?

试了一个程序:打开记事本程序,记事本中输入的内容和保存的文件名是传递过来的变量,变量赋值在头文件中。两个脚本,一个头文件
脚本notepadtest:

'$include:"notepadheader"

declare sub newnotepad basiclib "notepadstart"(notepadinput as string,notepadname as string)

Sub Main
    Dim Result As Integer
   
    dim notepadinput as string
    dim notepadname as string

    'Initially Recorded: 2005-04-1820:45:44
    'Script Name: notepadtest
    call newnotepad(notepadinput,notepadname)
End Sub

脚本 notepadstart:

'$include:"notepadheader"

declare sub newnotepad(notepadinput as string,notepadname as string)

Sub newnotepad(notepadinput as string,notepadname as string)
    Dim Result As Integer

    'Initially Recorded: 2005-04-1820:46:05
    'Script Name: notepadstart
    StartApplication "F:\NOTEPAD.EXE"
   
    Window SetContext, "Caption=未定标题 - 记事本", ""
    InputKeys notepadinput
   
    Window SetContext, "Caption=未定标题 - 记事本", ""
    MenuSelect "文件(F)->另存为(A)..."
   
    Window SetContext, "Caption=另存为", ""
    ComboEditBox Left_Drag, "ObjectIndex=3", "Coords=55,4,-64,13"
    InputKeys notepadname
    PushButton Click, "Text=保存(S)"
   
   
    end if   
End Sub

头文件notepadheader:

sub notepadheader

dim notepadinput as string
dim notepadname as string

notepadinput = "12345"
notepadname = "01"

end sub

但是变量总是引用不过来,不知道为什么。哪位能给指点一下谢谢了

司空公子 发表于 2005-4-21 13:53:50

你的这种方式不对,你写的是子函数的形式,那么在文件里调用的时候就是通过子函数名,来调用子函数里的程序。
如果是要实现你说的变量定义的话,那么就需要在头文件里定义成
const notepadname as string = "01"
然后就可以在脚本里使用这个变量了。
或者在头文件里定义成
dim notepadname as string
然后到具体的脚本里再对该变量进行赋值。

可以参看帮助,关于。sbh的头文件的帮助信息。

dionysus 发表于 2005-4-22 21:39:43

谢谢,搞明白了
页: [1]
查看完整版本: 怎么读取在头文件中已经赋值的变量?