Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Lekim en 20 Marzo 2016, 16:38 pm



Título: Acceso denegado al crear acceso directo desde consola de windows
Publicado por: Lekim en 20 Marzo 2016, 16:38 pm
hola

Desde Vista y posterior funciona este código:

Vista/Windows7

Código:
@Echo off

REM     <<<< Crea acceso directo >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
echo Set oWS = WScript.CreateObject("WScript.Shell") > %~dp0CreateShortcut.vbs
echo sLinkFile = "%userprofile%\Desktop\Notepad.lnk" >> %~dp0CreateShortcut.vbs
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %~dp0CreateShortcut.vbs
echo oLink.TargetPath = "%systemroot%\System32\Notepad.exe" >> %~dp0CreateShortcut.vbs
echo oLink.Save >> %~dp0CreateShortcut.vbs
cscript %~dp0CreateShortcut.vbs
del  %~dp0CreateShortcut.vbs
REM >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>


XP [DEVUELVE ACCESO DENEGADO ( y como Administrador)]
Código:
@Echo off

REM     <<<< Crea acceso directo >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
echo Set oWS = WScript.CreateObject("WScript.Shell") > %~dp0CreateShortcut.vbs
echo sLinkFile = "%userprofile%\Escritorio\Notepad.lnk" >> %~dp0CreateShortcut.vbs
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> %~dp0CreateShortcut.vbs
echo oLink.TargetPath = "%systemroot%\System32\Notepad.exe" >> %~dp0CreateShortcut.vbs
echo oLink.Save >> %~dp0CreateShortcut.vbs
cscript %~dp0CreateShortcut.vbs
del  %~dp0CreateShortcut.vbs
REM >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Gracias



He hecho un prueba creando un paquete de instalación con WinRAR, de modo que se ejecute como administrador. En tal caso, si que funciona. ¿Como puedo ejecutarlo como Administrador directamente?, ya que realmente lo ejecuto desde una cuenta con privilegios de administrador. No entiendo porqué me da Acceso denegado..
 
[SOLUCIONADO]

Ya lo he solucionado quitando %~dp0 y cambiando el directorio mediante PUSHD.
 

Ahora funciona en ambos sistemas y en Administrador o No adeministrador

Código:
REM     <<<< Crea acceso directo >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
PUSHD %APPPATH%
echo Set oWS = WScript.CreateObject("WScript.Shell") > CreateShortcut.vbs
echo sLinkFile = "%userprofile%\Escritorio\Notepad.lnk" >> CreateShortcut.vbs
echo Set oLink = oWS.CreateShortcut(sLinkFile) >> CreateShortcut.vbs
echo oLink.TargetPath = "%systemroot%\System32\Notepad.exe" >> CreateShortcut.vbs
echo oLink.Save >> CreateShortcut.vbs
cscript CreateShortcut.vbs
del  CreateShortcut.vbs
REM >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>