fenhanxue 发表于 2015-3-26 14:36:38

【已解决】请教,加了#RequireAdmin 之后,运行代码,如果出错了,不会提示哪里出错

本帖最后由 fenhanxue 于 2015-3-28 14:08 编辑

我记得一般代码,写好后,在运行的过程中,如果出错了,会跳出一个提示哪一行代码出错的窗口,点击确认后,再程序自动退出

我现在在代码开头,加了 :#RequireAdmin

然后,程序如果运行过程中,出错了,就直接自动退出了,不会提示哪一行出错

我想知道,此时,我应该怎么知道,我的代码哪一行是出错了的?


结贴总结:目前没找到原因,估计的可能性,是操作系统版本 或者是 SciTE 版本的原因导致

kk_lee69 发表于 2015-3-26 14:50:26

回复 1# fenhanxue

出了問題 直接退出 跟你加 #RequireAdmin這個沒有關係

程序出錯提示 你在哪一行代碼出錯請舉實際的例子 或者圖片看看是在哪的地方提示
你說的該不會是COM+出錯的提示吧........

另外如果你是在編輯程式的畫面 按 F5 執行任何的出錯行數都會回到 編輯畫面的 下方
請注意看

fenhanxue 发表于 2015-3-26 15:35:01

回复 2# kk_lee69

例如如下代码:#RequireAdmin

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

Global $els

$Form = GUICreate("ces", 232, 456, 1160, 0)
WinSetOnTop($Form,"",1)

$bt_creat = GUICtrlCreateButton("测试", 1, 405, 48, 33)
GUISetState(@SW_SHOW)


While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                ;_ReduceMemory(@AutoItPID);释放内存,本函数在循环时多多调用
                Case $GUI_EVENT_CLOSE
                        Exit
                Case $bt_creat
                        ceshi()
        EndSwitch
WEnd


Func ceshi()
        MsgBox(0,'',$els.outertxt)
EndFunc

fenhanxue 发表于 2015-3-26 15:42:45

kk_lee69 发表于 2015-3-26 15:44:15

回复 3# fenhanxue

我是 3.3.8 的版本 我的不管 加不加都會出現錯誤

fenhanxue 发表于 2015-3-26 15:49:34

我是3.3.6郁闷了,这是啥子情况

kk_lee69 发表于 2015-3-26 15:53:48

回复 4# fenhanxue

換新版本3.3.12版一樣會報錯

kk_lee69 发表于 2015-3-26 15:54:56

回复 6# fenhanxue

你的應該 漢化過的

不介意的話 把你的編輯器 改為英文原版的 試看看

fenhanxue 发表于 2015-3-26 16:01:17

换了台电脑,用的英文版的,可以提示错误......那么这样推断,有2种可能,一种是 汉化版和英文版之间出问题

另一种就是我的当前电脑的配置环境有问题

kk_lee69 发表于 2015-3-26 16:04:54

回复 9# fenhanxue

其實 3.3.6 有BUG譬如 你要更改原本內定的托盤訊息就會出現空白

如果不習慣英文版    就建議你換成 3.3.8 的漢化版

至於 在往上的版本 改了蠻多了 要考慮一下才換

fenhanxue 发表于 2015-3-26 16:10:56

回复 10# kk_lee69


    恩,谢啦,我这版本的确是安装了好多年了,没想着更新,那我给更新下,多谢啦

131738 发表于 2015-3-26 16:49:33

回复 4# fenhanxue

变量 $els.outertxt 没有定义.....

haijie1223 发表于 2015-3-27 09:12:29

有个变量没有定义吧,而且出现这样的错误,可能与你的系统也有关系。

Huiseyu 发表于 2015-3-27 21:57:48

13.19 没有出错,运行还算正常,除了测试按钮按下退出。

改了全局就没什么问题#RequireAdmin

#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <IE.au3>

Global $els=''

$Form = GUICreate("ces", 232, 456, 1160, 0)
WinSetOnTop($Form,"",1)

$bt_creat = GUICtrlCreateButton("测试", 1, 405, 48, 33)
GUISetState(@SW_SHOW)


While 1
      $nMsg = GUIGetMsg()
      Switch $nMsg
                ;_ReduceMemory(@AutoItPID);释放内存,本函数在循环时多多调用
                Case $GUI_EVENT_CLOSE
                        Exit
                Case $bt_creat
                        ceshi()
      EndSwitch
WEnd


Func ceshi()
      MsgBox(0,'',$els)
EndFunc

fenhanxue 发表于 2015-3-28 01:12:59

回复 13# haijie1223

这里的变量,是故意不定义,这一行代码就是错了,是为了说明问题,故意这么设置的。

当代码没加 #RequirAdmin 的时候,运行后,SciTE 里会有错误提示,告诉我哪一行代码出错了

但是当 加 #RequirAdmin 之后,运行后,SciTE 里没有任何错误提示,程序直接就退出了。

那么问题来了,当我的源代码是成百上千行的时候,加 #RequirAdmin 之后,程序如果代码有问题,SciTE 里没有任何错误提示就自动退出了,那自己就根本不知道到底哪一行的代码是出错的,要去修改代码,那工作量就大的一塌糊涂啦
页: [1] 2
查看完整版本: 【已解决】请教,加了#RequireAdmin 之后,运行代码,如果出错了,不会提示哪里出错