Deshabilitar y habilitar el administrador de tareas con vba y cmd
publicado
Hola amigos espero me puedan ayudar, tengo una archivo de excel con macro con el codigo vba protegido con contraseña y con compartir, pero detecte que cuando el usuario usa el administrador de tareas para cerrar a la fuerza el archivo de excel, este se abre como si no le hubiese puesto protección de bloqueo al projecto vba.
La opción más adecuada que encontre fue modificar el registro de windows con CMD, en esta web encontre un buen código:
pero no funciona, ojo que escrito manualmente si funciona, doy a inicio cmd iniciar como administrador y pongo el codigo REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System /v DisableTaskMgr /t REG_DWORD /d 1 /f pero lo malo es que quiero que este registro funciones en las pc's de las personas a las que voy a dar el archivo y luego que cierren vuelva a estar habilitado.
Hola amigos espero me puedan ayudar, tengo una archivo de excel con macro con el codigo vba protegido con contraseña y con compartir, pero detecte que cuando el usuario usa el administrador de tareas para cerrar a la fuerza el archivo de excel, este se abre como si no le hubiese puesto protección de bloqueo al projecto vba.
La opción más adecuada que encontre fue modificar el registro de windows con CMD, en esta web encontre un buen código:
using command prompt from VBA
Sub x()
Dim Par As String
Par = "dir c:\ /s/p"
Call Shell("C:\WINDOWS\system32\cmd.exe /c " & Par, 1)
End Sub
yo lo he transformado de la siguiente manera
Sub Deshabilitar()
Dim Ubicacion As String
Dim ModifReg As String
Ubicacion = "cd C:\Windows\system32"
ModifReg = "REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System /v DisableTaskMgr /t REG_DWORD /d 1 /f "
Call Shell("C:\WINDOWS\system32\cmd.exe /k " & Ubicacion, 1)
Call Shell("C:\WINDOWS\system32\cmd.exe /k " & ModifReg, 1)
End Sub
Sub Habilitar()
Dim Ubicacion As String
Dim ModifReg As String
Ubicacion = "cd C:\Windows\system32"
ModifReg = "REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System /v DisableTaskMgr /t REG_DWORD /d 0 /f "
Call Shell("C:\WINDOWS\system32\cmd.exe /k " & Ubicacion, 1)
Call Shell("C:\WINDOWS\system32\cmd.exe /k " & ModifReg, 1)
End Sub
pero no funciona, ojo que escrito manualmente si funciona, doy a inicio cmd iniciar como administrador y pongo el codigo REG add HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System /v DisableTaskMgr /t REG_DWORD /d 1 /f pero lo malo es que quiero que este registro funciones en las pc's de las personas a las que voy a dar el archivo y luego que cierren vuelva a estar habilitado.
El primero dice acceso denegado
MACRO OCULTA ADMIN DE TAREAS v2.zip