Estoy trabajando en un complemento de Firefox (que está escrito en JavaScript) y necesito determinar el usuario de Windows que inició sesión actualmente. ¿Hay alguna forma de hacer esto?Obtenga el nombre de usuario de Windows en un complemento de Firefox heredado (no WebExtensions)
Respuesta
Puede usar la interfaz nsIEnvironment para obtener USERNAME
variable environmnet.
¿existe un equivalente de IE para esto que no da el problema que tiene ActiveX (al usuario se le dice que hay un riesgo de seguridad, etc.) cuando pasa por el proceso de obtener el nombre de usuario? – pythonian29033
<html>
<head>
<script language="javascript">
function GetUserName()
{
var wshell = new ActiveXObject("WScript.Shell");
alert(wshell.ExpandEnvironmentStrings("%USERNAME%"));
}
</script>
</head>
<body OnLoad="GetUserName();">
</body>
</html>
ActiveX no funciona exactamente en Firefox. – sdwilsh
Esto hace el truco en Windows:
function getUser() {
return Components.classes["@mozilla.org/process/environment;1"].getService(Components.interfaces.nsIEnvironment).get('USERNAME');
}
Esta solución me da este error'TypeError: Components.classes no está definido', ¿Cuál crees que es la solución para este error? – Scar
Esto no funciona en Firefox ya que la pregunta original es preguntar. – Monkpit
@Scar: Por lo que he entendido [este Stackoverflow-post] (http://stackoverflow.com/questions/21378058/why-components-classes-is-undefined), no puede usar Components.classes en páginas web regulares. Está destinado para su uso en extensiones/complementos de Firefox. – Stephanie
Firefox ya ha autenticación integrada incorporado (muchas personas no saben que).
Ver: https://developer.mozilla.org/en-US/docs/Integrated_Authentication
Aquí es un complemento de Firefox populares que facilita la configuración: https://addons.mozilla.org/nl/firefox/addon/integrated-auth-for-firefox/
Aquí es alguna explicación adicional:
http://justgeeks.blogspot.nl/2011/01/firefox-supports-integrated-windows.html
Buena suerte!
siguiente código funciona para mí en lugar de proceso de carga con la función que llama:
var objUserInfo = new ActiveXObject("WScript.network");
document.write(objUserInfo.ComputerName+"<br>");
document.write(objUserInfo.UserDomain+"<br>");
document.write(objUserInfo.UserName+"<br>");
var uname = objUserInfo.UserName;
alert(uname);
El asker usa * firefox *. ¡Esta respuesta usa M $ ActiveX! No funcionará (y no puedo creer que realmente lo haya probado, pero lo hice). En realidad, había un complemento de ActiveX para Firefox (hace algunas eras, alrededor de la era de FF2), pero ActiveX ahora está en la lista de bloqueo de mozilla. ([fuente] (http://kb.mozillazine.org/ActiveX)). – GitaarLAB
Probado pero este código solo funciona en Internet Explorer y no funcionará en Firefox. La mejor opción es crear un control/cuadro de texto oculto para mantener el valor dado desde el código (lado del servidor), use javascript para obtener el valor que necesita. Teniendo en cuenta la tendencia actual, no todos usan IE para hacer su trabajo nunca más. – mutanic
10 representante por el problema de mostrarnos que hay opciones adicionales – pythonian29033
- 1. Obtenga el nombre de usuario actual en C++ en Windows
- 2. Obtenga el nombre de usuario de OS Win 7 Javascript
- 3. Obtenga el nombre de usuario de Windows asociado con un escritorio
- 4. Obtenga un control de Windows Forms por nombre en C#
- 5. Obtenga el nombre completo del dispositivo de audio de Windows
- 6. Perforce ¿El complemento de Windows no funciona?
- 7. Cómo escribir un complemento C++ FireFox 3 (no extensión) en Windows?
- 8. ¿Cómo obtengo el nombre del usuario actual de Windows en formato de nombre de usuario @ dominio?
- 9. Windows Batch Script Obtenga el nombre actual de la unidad
- 10. Descargando archivos con un complemento de Firefox
- 11. complemento de Firefox que registra el tráfico
- 12. Reproducir un sonido en un complemento de Firefox
- 13. ¿Cómo ejecutar un comando de Windows desde el complemento de Firefox?
- 14. ¿Cómo escribo un complemento de Firefox?
- 15. Nombre de usuario de Windows longitud máxima
- 16. Buscar el nombre de usuario de Windows dentro de R
- 17. Complemento de Firefox add 2px en un botón de envío
- 18. Autenticación de Windows - Obteniendo el nombre de usuario actual
- 19. ¿Cómo desarrollar el complemento Firefox?
- 20. Firefox: complemento vs extensión?
- 21. Mejor método para guardar datos en un complemento de Firefox
- 22. Obtenga una lista de archivos de solución/proyecto para el complemento VS o el complemento DXCore
- 23. QT: obtenga el nombre de clase de un objeto
- 24. appendChild en un XUL complemento de Firefox rompe
- 25. Unidad de prueba de un complemento de Firefox
- 26. Quitar el nombre de usuario SVN y la contraseña de Eclipse no funciona en Windows 7
- 27. Comunicación entre dominios usando un complemento de Firefox
- 28. Cambiar el icono de instalación del complemento de Firefox
- 29. Comprueba si un complemento de Firefox 3.5 está habilitado
- 30. ¿Recuperar el nombre y apellido del usuario actual de Windows?
Este es un riesgo de seguridad y es por eso que no se expone en Javascript. ¿Que estás tratando de hacer? –
Estoy creando una extensión interna para una empresa y necesito ver qué usuario solicita qué documento. – cwhiii
@duskwuff, ¿por qué enfrentar una pregunta de 7 años solo para esa edición? Todo lo que hizo fue reemplazar una etiqueta en el título con otra etiqueta en el título. Las etiquetas ya dejaban en claro que se trataba de un complemento de Firefox. No hubo necesidad de editar esto para hacer ese cambio. De hecho, si quieres ser pedante, no se supone que tengamos etiquetas no integrales en los títulos, por lo que "Obtener nombre de usuario de Windows" hubiera sido más apropiado. ¿Estás proponiendo que siempre pongamos etiquetas en todos los títulos? – Makyen