<output id="os3gq"><ruby id="os3gq"></ruby></output>

    1. <mark id="os3gq"></mark>
    2. Access培訓
      網站公告
      ·Access快速平臺QQ群號:84825014    ·Access快速開發平臺下載地址及教程    ·歡迎添加微信交流賬號:AccessoftChu    ·如何快速搜索本站文章|示例|資料    
      您的位置: 首頁 > 技術文章 > Access數據庫-宏

      避開Autoexec宏(自動執行宏)

      時 間:2004-11-10 00:00:00
      作 者:Dev Ashish   ID:61  城市:岳陽
      摘 要:如果沒有設置AllowBypassKey屬性,那么通過編程方式在啟動數據庫時按住Shift鍵來自動避開數據庫啟動的自動代碼。通過引用隱藏的ACCESS數據庫實例來避開數據庫的自動宏,你可以使用下面的函數fGetRefNoAutoexec。

      正 文:

       首先,祝賀 Dev Ashish于2002.11.11成功改版The access Web,使越來越多的ACCESS愛好者獲得更大的幫助,在此,表示感謝。

       

        常常,使用Autoexec宏來自動操作一個或多個ACCESS數據庫,特別是如果開發者試圖獲Access對象模型(Access Object Model),勝過使用Jet引擎(能通過DAO和ADO來獲取的)。不管怎樣,Access不提供任何內置的方法來有條件避開這個Autoexec宏。如果數據庫包括了這個宏,一打開就會運行。當未設置數據庫的AllowBypassKey屬性時,可以在啟動數據庫時按住Shift鍵來避開運行這個宏。

        如果沒有設置AllowBypassKey屬性,那么通過編程方式在啟動數據庫時按住Shift鍵來自動避開數據庫啟動的自動代碼。通過引用隱藏的ACCESS數據庫實例來避開數據庫的自動宏,你可以使用下面的函數fGetRefNoAutoexec。

      '********* Code Start ***********
      ' This code was originally written by Dev Ashish.
      ' It is not to be altered or distributed,
      ' except as part of an application.
      ' You are free to use it in any application,
      ' provided the copyright notice is left unchanged.
      '
      ' Code Courtesy of
      ' Dev Ashish

       


      Private Declare Function SetKeyboardState _
          Lib "user32" _
          (lppbKeyState As Any) _
          As Long
          
      Private Declare Function GetKeyboardState _
          Lib "user32" (pbKeyState As Any) _
          As Long

      Private Declare Function GetWindowThreadProcessId _
          Lib "user32" _
          (ByVal hWnd As Long, _
          lpdwProcessId As Long) _
          As Long

      Private Declare Function AttachThreadInput _
          Lib "user32" _
          (ByVal idAttach As Long, _
          ByVal idAttachTo As Long, _
          ByVal fAttach As Long) _
          As Long

      Private Declare Function SetForegroundWindow _
          Lib "user32" _
          (ByVal hWnd As Long) _
          As Long

      Private Declare Function SetFocusAPI _
          Lib "user32" Alias "SetFocus" _
          (ByVal hWnd As Long) _
          As Long

      Private Const VK_SHIFT = &H10
      Private Const VK_LSHIFT = &HA0
      Private Const VK_RSHIFT = &HA1

      Function fGetRefNoAutoexec( _<

      Access軟件網QQ交流群 (群號:252407829)       access源碼網店


      最新評論 查看更多評論(1)

      2016/9/12 16:42:19雷克斯鬼龍
      根本不用這么麻煩,直接禁用所有宏把Autoexec改個名就無法執行了

      發表評論您的評論將提升作者分享的動力!快來評論一下吧!

      用戶名:
      密 碼:
      內 容: