Evitar llamar a métodos problemáticos
Actualización: noviembre 2007
Nombre de tipo |
AvoidCallingProblematicMethods |
Identificador de comprobación |
CA2001 |
Categoría |
Microsoft.Reliability |
Cambio problemático |
No problemático |
Motivo
Un miembro llama a un método potencialmente peligroso o problemático.
Descripción de la regla
Evite realizar llamadas a métodos potencialmente peligrosas e innecesarias.
Esta regla se desencadena cuando un miembro llama a uno de los métodos siguientes:
Type.InvokeMember con BindingFlags.NonPublic
CoSetProxyBlanket (Ole32)
CoInitializeSecurity (Ole32)
Razones para evitar CoSetProxyBlanket en código administrado
Cuando el código de usuario comienza a ejecutarse en un proceso administrado, es demasiado tarde para llamar de forma confiable a CoSetProxyBlanket. CLR realiza acciones de inicialización que pueden o no evitar que P/Invoke de los usuarios se realice correctamente.
Si necesita llamar a CoSetProxyBlanket para una aplicación administrada, se recomienda que inicie el proceso mediante un ejecutable de código nativo (C++), llame a CoSetProxyBlanket en el código nativo y, a continuación, inicie la aplicación de código administrado en proceso. (Asegúrese de especificar el número de versión del motor en tiempo de ejecución.)
Cómo corregir infracciones
Para corregir una infracción de esta regla, quite o reemplace la llamada al método peligroso o problemático.
Cuándo suprimir advertencias
No suprima las advertencias de esta regla.