我們有一個運行終端服務的 Windows 2008,但作為遠端應用程序,而不是完整的桌面。
有一個資料庫檔案 calc.mdb 給出「磁碟或網路錯誤」。如果安裝了 MS Access 2003 的使用者存取它,它運作得很好。然而,對於透過 RemoteApp 存取的旅行用戶,他們會收到「磁碟或網路錯誤」。
我進行了搜索,幾乎每個人都得出以下幾個結論:
1. 這是網路錯誤。
2. 重新編譯和/或壓縮它。
它當然不是#1,因為我可以驗證網路是否正常。
我已經重新編譯和壓縮但沒有成功(此外你可以打開資料庫)。
從客戶端電腦:
A) 執行另一個 RemoteApp(例如 Word、寫字板或甚至另一個 Access DB)
B) 透過完整遠端桌面登入沒有問題。
C) 可從本機安裝的 Access 2003 執行資料庫
D) 透過遠端應用程式開啟時收到「磁碟或網路錯誤」。
事件日誌沒有顯示我能找到的任何幫助。現在 Windows Server 中存在各種日誌,也許可以到其他地方查看?這似乎與 RemoteApp 設定有關。
再次強調,這不是網路問題!這種情況已經持續了幾個月。我已經確認不是網路問題。
是的,一旦我完成目前的項目,下一步就是更新這些老化的應用程式。
編輯:根據評論進行附加測試:
- 將有問題的資料庫複製到本機。
- 重新命名為將 TEST1 新增至檔案名稱。
- 複製回伺服器。
- 更新了 RemoteApp 快捷方式以查看新檔案名稱。
- 有用!
因此,只需複製文件並重命名即可使其工作。但是,我在不更改名稱的情況下嘗試了相同的步驟(基本上將其複製到本地並複製/覆蓋回伺服器),但這並不能解決問題。
答案1
我在創建新的 2008 R2 伺服器並恢復 2005 資料庫的備份後遇到此錯誤並發布此錯誤。
然後我導入了所有用戶、維護計劃等,但我收到此錯誤,因為我忘記將預設語言從美國英語更改為英國英語。
遷移後我必須:
- 使用以下命令刷新統計資料:exec sp_udatatestats
- 設定預設語言: EXEC sp_configure 'default language', 23
使用下面的程式碼(我應該連結它,但我忘了從哪裡得到它)我更改了所有用戶的語言
聲明@l table(sqlCmd nvarchar(max)) 聲明@sqlCmd nvarchar(max) 插入@l select '更改登入' + quotename(loginname) + ' with default_language = 英國;'來自 sys.syslogins 其中 dbname = 'XXXXXXXXXXXX'
select top 1 @sqlCmd = sqlcmd from @l while (@sqlCmd is not null) begin print @sqlCmd exec(@sqlCmd) update @l set sqlCmd = null where @sqlCmd=sqlCmd set @Cmd = nulllect
topmd來自@l 的sqlcmd,其中sqlCmd 不為null 結束