2010-07-14 119 views
3

在Access中開發應用程序。訪問文件將位於數據庫中,但是當用戶需要使用它時,我希望他們將其複製到桌面上。如果他們將它從G:\驅動器(我們的網絡文件夾)上運行,它應該給它們一條消息。確定路徑是否爲網絡路徑VBA

那麼有沒有Win API會幫我解決這個問題? 我打算將此代碼放置在窗體的Form_Load事件中。

+0

我不能想出你說你想做什麼的任何理由。你能解釋一下爲什麼*? – 2010-07-16 00:41:32

回答

1

如果要防止用戶打開你的來自G:\驅動器的數據庫,您可以使用以下代碼在啓動表單中進行簡單檢查:

Dim strMsg As String 
If CurrentProject.Path Like "G:*" Then 
    strMsg = "Please copy this database file to your " & _ 
     "local disk and open the copy instead of this one." 
    MsgBox strMsg 
    Application.Quit 
End If 

如果您還想阻止它們從不同的驅動器號映射或UNC路徑打開數據庫,則可以將文件(如NotFromHere.txt)添加到存儲數據庫文件的文件夾中。

Dim strMsg As String 
Dim strFilePath 
strFilePath = CurrentProject.Path & Chr(92) & "NotFromHere.txt" 
If Len(Dir(strFilePath)) > 0 Then 
    strMsg = "Please copy this database file to your " & _ 
     "local disk and open the copy instead of this one." 
    MsgBox strMsg 
    Application.Quit 
End If 
+0

Thankyou的任何想法的替代解決方案。我將採用第二種方式,因爲驅動器號可能會更改,所以我不想對其進行硬編碼。 – masfenix 2010-07-15 12:50:45

+0

對此的要求已更改,我們確定其不是可行的解決方案。我們要走一條完全不同的路線。謝謝 – masfenix 2010-07-15 14:46:18

0

我認爲有一個調用會列出機器上(物理上)連接的驅動器,您可以調用該驅動器並比較用戶對列表中的驅動器說明符。

+0

關於它可能被稱爲 – masfenix 2010-07-14 19:13:54

1

你可能要檢查出優秀的訪問自動FE更新爲複製下來更新等

http://autofeupdater.com/

我滾我自己非常類似的系統之前,我發現這是一個自動化的方式和它確實使得FE更容易更新