ex14_debug3_fLib_e_file.zip


/*

##############################################

예제 14 debug3 fLib_e() file로 로그 남기기

   

  예제 13의 fLib_e에 추가하여 file로 로그 남기는 법을 만들었다.

  

  

사용법:

  fLib.ahk 를 autohotkey.exe 파일과 같은 위치의 lib 폴더에 복사한다.

  

  내 스크립트에서 

    fLib_e("로그 추가")  ; 로그 추가

    fLib_LogShow()  ; 로그 gui 보이도록한다.

    fLib_LogHide()  ; 로그 gui 숨긴다.

    fLib_LogDisable() ; 로그 gui를 destroy하고, 더이상 로그가 추가되지 않도록한다.

    fLib_LogEnable() ; disable된 log를 다시 enable 시킨다.

    fLib_LogEnableFile() ; 로그를 file로 남긴다.실행파일위치의 Log 폴더에 생서됨.

    fLib_LogDisableFile() ; 로그를 file로 남기지 않는다. 없으면 남기지 않는다.

    

###############################################

*/




#SingleInstance, force ;이 스크립트는 동시에 한개만 실행되도록 한다. 이미 동작중이면 kill 하고 다시 실행한다.

#noenv ;변수가 window 환경변수값인지 체크하지 않는다. 속도 향상

SetBatchLines, -1 ;라인간 딜레이 없음. 속도향상

SetWorkingDir, %A_ScriptDir%   ;스크립트가 있는 폴더를 실행폴더로 설정합니다.

                               ;image파일 이름만 있는경우, 현재 실행 폴더에서 이미지 파일을 찾습니다.


fLib_e("script 시작")



변수:=1

G1=kkkkk


gui, 1:+resize

Gui, 1:Add, Button,ggGui1 vvGuiB1,outputdebug 로그 보기

Gui, 1:Add, Button,ggGui1 vvGuiB2,메세지 박스로 보기

Gui, 1:Add, Button,ggGui1 vvGuiB3,변수 값 보기

Gui, 1:Add, Button,ggGui1 vvGuiB4,최근 실행줄 보기

Gui, 1:Add, Button,ggGui1 vvGuiB5,flib_e 로그 추가

Gui, 1:Add, Button,ggGui1 vvGuiB6,로그 보이기   ;로그창 보이기 

Gui, 1:Add, Button,ggGui1 vvGuiB7,로그 숨기기   ;로그창 숨기기 로그는 계속 수집됨.

Gui, 1:Add, Button,ggGui1 vvGuiB8,로그 enable   ;로그 기능 켜기

Gui, 1:Add, Button,ggGui1 vvGuiB9,로그 disable  ;로그 기능 끄기 로그 수집안됨.

Gui, 1:Add, Button,ggGui1 vvGuiB10,로그 파일 enable   ;로그 기능 켜기

Gui, 1:Add, Button,ggGui1 vvGuiB11,로그 파일 disable  ;로그 기능 끄기 로그 수집안됨.


Gui, 1:show


;fLib_logdisable()   ;kcmt.rel 이 함수를 사용하면 이 fLib_e() 모두 무시 된다. 


fLib_LogShow()

fLib_LogEnableFile()

flib_e(G1)

flib_e("G1:" G1 "변수:" 변수)

flib_e("G1:" G1,"변수:" 변수)

flib_e(,변수)

fLib_LogDisableFile()

flib_e("자동실행영영끝")



;msgbox 프로그램 시작시 기본 실행되는 영역(최초 return 만날때까지) ; msgbox 로 debugging

return

; 이다음부터 나오는 label ,hotkey, functinos 는 호출해야지 실행됩니다.


gGui1:

    if(A_GuiControl ="vGuiB1")

        gosub L_showOutputDebug

    else if(A_GuiControl ="vGuiB2")

        gosub L_showMsgBox

    else if(A_GuiControl ="vGuiB3")

        gosub L_showListVars

    else if(A_GuiControl ="vGuiB4")

        gosub L_showListLines

    else if(A_GuiControl ="vGuiB5")

        gosub L_addfLib_log

    else if(A_GuiControl ="vGuiB6")

        fLib_logshow()

    else if(A_GuiControl ="vGuiB7")

        fLib_loghide()

    else if(A_GuiControl ="vGuiB8")

        fLib_logenable()

    else if(A_GuiControl ="vGuiB9")

        fLib_logdisable()

    else if(A_GuiControl ="vGuiB10")

        fLib_LogEnableFile()

    else if(A_GuiControl ="vGuiB11")

        fLib_LogDisableFile()

return


L_addfLib_log:

    count++

    fLib_e(count)


return


L_showListLines:

    ListLines

    pause

return


L_showListVars:

    ListVars

return


L_showOutputDebug:

    loop,3

    {

        outputdebug %A_Index% 프로그램 흐름에 방해하지 않고 같을 확인한다.

    }

return


L_showMsgBox:

    loop,3

    {

       msgbox %A_Index% 프로그램을 중지시키고 값을 확인하기 용이 하다.

    }

return


guiclose:

exitapp



;#include fLIb.ahk


반응형

+ Recent posts