Bug aparente da Symantec, foi corrigido quando instalamos atualizações.
Temos um usuário final usado banco de dados MS-Access que se conecta a um diretório do Visual Fox Pro de arquivos .dbf via tabelas vinculadas e um DSN ODBC. Isso funcionou bem até que o Symantec Endpoint Protection instalou algumas atualizações e, agora, quando um conjunto selecionado de máquinas tenta se conectar a ele, recebemos um erro de falha do ODBC.
Sabemos disso porque a desinstalação do Symantec Endpoint Protection faz com que o banco de dados funcione novamente.
Temos as seguintes especificações:
SEP:
Symantec.cloud - Cloud Agent 2.03.70.2614
Symantec.cloud - Proteção do endpoint - NIS-21.5.0.19
Driver ODBC de 32 bits:
Driver do Microsoft Visual FoxPro - 6.01.8629.01 - VFPODBC.DLL - 12/7/1999
Este driver foi calibrado para o Windows 7 (já que não é suportado) com chaves de registro. Eu já estou ciente de que tenho que instalar o driver usando C: \ Windows \ SysWOW64 \ odbcad32.exe, em máquinas de 64 bits. O driver já funciona desde que o SEP não esteja instalado.
MS-Access:
Existem várias versões do MS-Access em que o problema está ocorrendo, entre 2007 e Office 365, então isso me leva a acreditar que tem a ver com ODBC e SEP ... e também o fato de que quando você desinstalar o SEP você acaba com um banco de dados em funcionamento; desabilitar o firewall no SEP, no entanto, não resolve o problema.
Máquinas:
A maioria das máquinas com esse problema são Lenovo ThinkCentere M73, mas não é exclusivo para este tipo de máquina, também temos alguns usuários com Dell OptiPlexes com o mesmo problema (não que eu ache que isso seja relevante).
Já falamos com o suporte do SEP, e a primeira coisa que eles pensaram foi que era um problema com o SEP gerenciando o firewall; Fizemos um grupo para colocar a máquina, o que nos permitiu desligar o firewall dentro da interface do SEP, dando-nos a opção de fazê-lo por 15 minutos ou mais. Isso não resolveu o problema.
TambémexecuteiumrastreamentoODBCetenteiacessaralgumasdastabelasvinculadasdoVisualFoxProapartirdobancodedadosdoMicrosoftAccessdousuáriofinal;eresultouemumarquivodelog.
AquiestãoosresultadosdorastreamentodoODBC:
Secured.mdw8d0-bccENTERSQLAllocEnvHENV*0x002521A4Secured.mdw8d0-bccEXITSQLAllocEnvwithreturncode0(SQL_SUCCESS)HENV*0x002521A4(0x03907130)Secured.mdw8d0-bccENTERSQLAllocConnectHENV0x03907130HDBC*0x002520D0Secured.mdw8d0-bccEXITSQLAllocConnectwithreturncode0(SQL_SUCCESS)HENV0x03907130HDBC*0x002520D0(0x03955AE8)Secured.mdw8d0-bccENTERSQLSetConnectOptionWHDBC0x03955AE8SQLINTEGER103<SQL_LOGIN_TIMEOUT>SQLPOINTER20Secured.mdw8d0-bccEXITSQLSetConnectOptionWwithreturncode0(SQL_SUCCESS)HDBC0x03955AE8SQLINTEGER103<SQL_LOGIN_TIMEOUT>SQLPOINTER20Secured.mdw8d0-bccENTERSQLSetConnectAttrWSQLHDBC0x03955AE8SQLINTEGER30002<unknown>SQLPOINTER[Unknownattribute30002]SQLINTEGER-3Secured.mdw8d0-bccEXITSQLSetConnectAttrWwithreturncode0(SQL_SUCCESS)SQLHDBC0x03955AE8SQLINTEGER30002<unknown>SQLPOINTER[Unknownattribute30002]SQLINTEGER-3Secured.mdw8d0-bccENTERSQLDriverConnectWHDBC0x03955AE8HWND0x0004031CWCHAR*0x6D768B34[-3]"******\ 0"
SWORD -3
WCHAR * 0x6D768B34
SWORD -3
SWORD * 0x00000000
UWORD 3 <SQL_DRIVER_COMPLETE_REQUIRED>
Secured.mdw 8d0-bcc EXIT SQLDriverConnectW with return code -1 (SQL_ERROR)
HDBC 0x03955AE8
HWND 0x0004031C
WCHAR * 0x6D768B34 [ -3] "******\ 0"
SWORD -3
WCHAR * 0x6D768B34
SWORD -3
SWORD * 0x00000000
UWORD 3 <SQL_DRIVER_COMPLETE_REQUIRED>
DIAG [IM003] Specified driver could not be loaded due to system error 0: The operation completed successfully. (Microsoft Visual FoxPro Driver, C:\Windows\system32\vfpodbc.dll). (160)
Secured.mdw 8d0-bcc ENTER SQLErrorW
HENV 0x03907130
HDBC 0x03955AE8
HSTMT 0x00000000
WCHAR * 0x0025206C
SDWORD * 0x00252034
WCHAR * 0x05F5A788
SWORD 4095
SWORD * 0x00252028
Secured.mdw 8d0-bcc EXIT SQLErrorW with return code 0 (SQL_SUCCESS)
HENV 0x03907130
HDBC 0x03955AE8
HSTMT 0x00000000
WCHAR * 0x0025206C [ 5] "IM003"
SDWORD * 0x00252034 (160)
WCHAR * 0x05F5A788 [ 165] "Specified driver could not be loaded due to system error 0: The operation completed successfully. (Microsoft Visual FoxPro Driver, C:\Windows\system32\vfpodbc.dll)."
SWORD 4095
SWORD * 0x00252028 (165)
Secured.mdw 8d0-bcc ENTER SQLErrorW
HENV 0x03907130
HDBC 0x03955AE8
HSTMT 0x00000000
WCHAR * 0x0025206C
SDWORD * 0x00252034
WCHAR * 0x05F5A8E8
SWORD 3919
SWORD * 0x00252028
Secured.mdw 8d0-bcc EXIT SQLErrorW with return code 100 (SQL_NO_DATA_FOUND)
HENV 0x03907130
HDBC 0x03955AE8
HSTMT 0x00000000
WCHAR * 0x0025206C
SDWORD * 0x00252034
WCHAR * 0x05F5A8E8
SWORD 3919
SWORD * 0x00252028
Secured.mdw 8d0-bcc ENTER SQLFreeConnect
HDBC 0x03955AE8
Secured.mdw 8d0-bcc EXIT SQLFreeConnect with return code 0 (SQL_SUCCESS)
HDBC 0x03955AE8
Secured.mdw 8d0-bcc ENTER SQLFreeEnv
HENV 0x03907130
Secured.mdw 8d0-bcc EXIT SQLFreeEnv with return code 0 (SQL_SUCCESS)
HENV 0x03907130
Existe alguma razão pela qual isso não funcionaria em algumas máquinas, mas nem todas elas?