C # Windows App Устройство, подключенное к системе, не работает - PullRequest
1 голос
/ 31 мая 2011

Я вижу следующее исключение из приложения Windows Forms на компьютере с Windows 7.Это только начало происходить на этой машине.Он по-прежнему отлично работает на других, но не на конкретной машине.

Исключение:

  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

StackTrace Информация:

  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-соединения на этой машине, чтобы я знал, что машина может видеть сервер базы данных.Есть предложения?

1 Ответ

0 голосов
/ 07 июля 2011

Оказывается, эта ошибка была связана с dll, которую использовала программа, написанная нашей компанией. Кажется, это происходит только в Windows 7.

Проблема была в том, что мы использовали dll с именем CryptBase.dll , но Windows 7 также поставляется со своим собственным CryptBase.dll . Версия моей компании должна была конфликтовать с версией Windows, потому что как только мы удалили нашу версию этой dll, программа начала работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...