2011-05-31 185 views
1

我在Windows 7計算機上看到以下來自Windows窗體應用程序的異常。這剛剛發生在這臺機器上。它在其他人上仍然可以正常工作,但在特定機器上卻不行C#Windows應用程序連接到系統的設備無法正常工作

例外:

Exception Type: System.ApplicationException 
    Message: A device attached to the system is not functioning. (Exception from HRESULT: 0x8007001F) 
    Data: System.Collections.ListDictionaryInternal 
    TargetSite: Void AddTimerNative(System.Object, UInt32, UInt32, System.Threading.StackCrawlMark ByRef) 
    Source: mscorlib 

堆棧跟蹤信息:

at System.Threading.TimerBase.AddTimerNative(Object state, UInt32 dueTime, UInt32 period, StackCrawlMark& stackMark) 
    at System.Threading.TimerBase.AddTimer(TimerCallback callback, Object state, UInt32 dueTime, UInt32 period StackCrawlMark & stackMark) 
    at System.Threading.Timer.TimerSetup(TimerCallback callback, Object state, UInt32 dueTime, UInt32 period, StackCrawlMark & stackMark) 
    at System.Threading.Timer..ctor(TimerCallback callBack, Object state, Int32 dueTime, Int32 period) 
    at System.Data.ProviderBase.DbConnectionPool.CreateCleanupTimer() 
    at System.Data.ProviderBase.DbConnectionPool.Startup() 
    at System.Data.ProviderBase.DbConnectionPoolGroup.GetConnectionPool(DbConnectionFactory connectionFactory) 
    at System.Data.ProviderBase.DbConnectionFactory.GetConnectionPool(DbConnection owningObject, DbConnectionPoolGroup connectionPoolGroup) 
    at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnection owningConnection) 
    at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnection outerConnection, DbConnectionFactory connectionFactory) 
    at System.Data.SqlClient.SqlConnection.Open() 
    at System.Data.Common.DbDataAdapter.QuietOpen(IDbConnection connection, ConnectionState& originalState) 
    at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) 
    at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior) 
    at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet) 

而且這似乎在應用程序中的第一個查詢是跑的情況發生。我可以通過該機器上的ODBC連接連接到數據庫服務器,所以我知道該機器可以看到數據庫服務器。有什麼建議麼?

+0

您是否嘗試以管理員身份運行? – 2011-05-31 12:45:49

+0

不知怎的,這讓我難以忘懷,但我會認爲他們之前並沒有像管理員那樣運行它。我會嘗試並報告回來。謝謝。 – 2011-05-31 12:49:20

+0

這不應該需要管理權限。這聽起來像是機器搞砸了。 – SLaks 2011-05-31 13:30:36

回答

0

事實證明,這個錯誤與我們公司編寫的程序使用的dll有關。這似乎只在Windows 7

的問題是,我們使用了一個名爲CryptBase.dll但Windows 7的dll出現還附帶了它自己的CryptBase.dll。我的公司版本必須與Windows版本衝突,因爲一旦我們刪除了這個DLL的版本,程序就開始工作。