【已解决】如何设置程序名称,非文件名(数据库连接需要)
本帖最后由 koflion 于 2011-8-30 11:59 编辑AU3开发的数据库应用程序,数据库是SQL SERVER 2000。其数据库的连接信息会保存在MASTER库sysprocesses 表中,是实时更新的,正常情况下无法修改、删除、插入等。该表有个字段program_name可以知道是什么应用程序连接的。不知道AU3如何设置这个program_name字段的值,哪位有什么好的方法,谢谢!
备注:通过脚本编辑器运行的连接program_name能显示为AutoIt v3 Script ,但编译成EXE后却为空,delphi环境在设置工程的版本等选项即可,应属于编译时的问题,那位大哥有什么好办法啊??
解決:
加個參數就好....連線參數加上;App=ABC123
你愿意的话可以修改下UDF。。HOHO,谢谢 kk_lee69 兄!
Func _SQL_Connect(ByRef $ObjConn,$sUsername, $sPassword, $sDatabase, $sServer ,$APP ="",$sDriver = "{SQL Server}")
Local $v = StringMid($sDriver, 2, StringLen($sDriver) - 2)
Local $key = "HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers", $val = RegRead($key, $v)
If @error Or $val = "" Then
SetError(2)
Return 0
EndIf
$ObjConn = ObjCreate("ADODB.Connection")
$ObjConn.open("DRIVER=" & $sDriver & ";SERVER=" & $sServer & ";DATABASE=" & $sDatabase & ";UID=" & $sUsername & ";PWD=" & $sPassword & ";APP=" & $APP & ";")
If @error Then
SetError(1)
Return 0
Else
Return $ObjConn
EndIf
EndFunc ;==>_SQL_Connect 我需要修改的是applicationname,并不是什么
#AutoIt3Wrapper_Res_Fileversion=
#AutoIt3Wrapper_Res_Field=之类的。。。各位帅哥美女们帮帮小弟啊!!!! 回复 2# koflion
你想做什么? 目的是连接数据库后,数据库的sysprocesses表的program_name值显示程序的名称
不编译直接运行脚本program_name显示的是AutoIt v3 Script,编译后就成空的了。。。我想问的是怎么定义???VB之类的都可以,AU3应该也可以吧!! 。。。。咋还是没人帮忙啊。。。拜托知道情况的朋友帮帮忙啊!! 編譯後 為空??不是應該是 檔案名嗎??
你的問題 應該朝著 定義自己的程序名稱 去找解決方法??
我記得論壇裡面有可以定義自己的程式 在 進程管理員裡面顯示的名稱?? 解決了可以結案了 幫你找到解決方法.....
加個參數就好....連線參數加上;App=ABC123
例如:
$conn.Open ("driver={SQL Server};server=127.0.0.1;uid=sa;pwd=123;database=MASTER;App=ABC123;")
連編譯前 都會改成 你給的名子 哦也。。。3Q.。。。谢谢了。。我赶紧试试!!!! 解決了可以結案了 幫你找到解決方法.....
加個參數就好....連線參數加上;App=ABC123
例如:
$c ...
kk_lee69 发表于 2011-8-27 22:14 http://www.autoitx.com/images/common/back.gif
果然。。。哎。。之前有想过肯定是连接参数的问题。。看过一篇VB的。。尼玛写的参数是APPNAME=''",连接不会失败但是无效。。又看了篇delphi,说是编译的时候有选择。。我丢。。谢谢啦。哥们!!!
页:
[1]