Pregunta

He estado evaluando perfiladores y herramientas de memoria de comprobación para los programas de C ++ nativa en Windows y todos ellos quieren ser instalado y ejecutar con privilegios de administrador. Rara vez una sesión como administrador en mi máquina. Si tengo que instalar algo o hacer algo que requiere privilegios administrativos, uso de runa y funciona bastante bien.

¿Es legítimo que un perfilador para requerir privilegios de administrador, o se los desarrolladores de perfil haciendo el vago? Estoy siendo irrazonable al rechazar todas estas herramientas sobre esta base?

Estoy desarrollando con VS 2005 en una máquina XP Pro.

¿Fue útil?

Solución 3

He estado leyendo sobre esto y poco a poco estoy llegando a la conclusión de que las herramientas de perfil similar, en general, no requieren acceso administrativo, sino que indica que se requiere es una manera fácil para los fabricantes de herramientas para evitar todos los problemas relacionado con los privilegios suficientes.

Por lo tanto, supongo que son ser perezoso, pero también algo pragmático.

Me corregirá si me equivoco (no soy experto en el modelo de seguridad de Windows), pero creo que una manera de manejar esta situación sería necesario tener privilegios de administrador sólo al momento de la instalación. A continuación, crear un grupo de usuarios ProfilerUsers y otorgar privilegios necesarios para ese grupo, entonces, que piden los usuarios de computadoras deben añadirse a ese grupo.

Lo más impactante que he descubierto es que una gran cantidad de desarrolladores ejecutar todo el tiempo con privilegios administrativos.

Otros consejos

Debido a que tienen que mirar a otra memoria de proceso, que normalmente es tabú.

algunos perfiladores de CPU realmente hacen una estadística promedio de uso de las interrupciones del sistema operativo ... obviamente no pueden hacer esto sin privilegios para ello:)

Suena como una opción de diseño por los desarrolladores. Ellos pueden haber pensado que era una buena idea solicitar derechos de administrador antes de sondeo en torno a la memoria o dinámicamente alterar código en la memoria ya que este comportamiento es de esperar de algunos tipos de software malicioso.

La explicación más probable es que se implementan como depuradores especializados, utilizando las API de depuración de Win32 como DebugActiveProcess () . Estas funciones necesitan PROCESS_ALL_ACCESS (como se detalla en la documentación) y yo esperaría que necesitará derechos de administrador para eso.

IIRC el depurador de Visual Studio no funciona (correctamente) o bien a menos que tenga derechos de administrador local en el sistema, al menos para C ++.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top