Restringir el uso de una macro a un pc

14/11/2005 - 12:05 por pasarin | Informe spam
Hola amigos, conoceis alguna manera de hacer que una macro solo pueda
ejecutarse en un pc determinado?. Es decir alguna condicional que haga
referencia a su dirección física o algo así.

Gracias

Preguntas similare

Leer las respuestas

#1 Luis Garcia
14/11/2005 - 15:58 | Informe spam
Hola:

Podrias usar las funciones de la API GetUserName y GetComputerName para
obtener el usuario y nombre del ordenador, y en tu macro, sino coincide,
pues no la ejecutas. Ahora no tengo las definiciones 'a mano', pero si
buscas por Google seguro que las encontraras.

Saludos

"pasarin" escribió en el mensaje
news:
Hola amigos, conoceis alguna manera de hacer que una macro solo pueda
ejecutarse en un pc determinado?. Es decir alguna condicional que haga
referencia a su dirección física o algo así.

Gracias


Respuesta Responder a este mensaje
#2 Hernandez, Roberto
15/11/2005 - 01:24 | Informe spam
O por que no, se me ocurre, buscar un archivo en tu disco duro [ya sea de
texto o de excel, etc] y buscar algun dato en cierta posición o celda. Si el
archivo no se encuentra, pues cierras tu aplicación.
Desde luego que el archivo deberá estar en un lugar 'medio escondido'...


"pasarin" escribió en el mensaje
news:
Hola amigos, conoceis alguna manera de hacer que una macro solo pueda
ejecutarse en un pc determinado?. Es decir alguna condicional que haga
referencia a su dirección física o algo así.

Gracias

Respuesta Responder a este mensaje
#3 David
15/11/2005 - 03:21 | Informe spam
Cada volumen de disco es marcado con un número de serie aleatorio al momento
de ser creado. Podrías utilizar ese número, pensando que la probabilidad de
encontrar un número igual al de tu disco es casi nula (virtualmente
imposible). Considera el siguiente código:

Sub ShowSerial()
Dim fs, d
Set fs = CreateObject("Scripting.FileSystemObject")
Set d = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(drvpath)))
MsgBox d.serialnumber
End Sub

Esto te mostraría en pantalla el número de serie de tu unidad activa, la
anotas, y luego puedes incluir algo como esto al principio de tu código:

Sub MiMacro()
Dim fs, d
Set fs = CreateObject("Scripting.FileSystemObject")
Set d = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(drvpath)))
If d.serialnumber<>######## then End Sub




"pasarin" escribió:

Hola amigos, conoceis alguna manera de hacer que una macro solo pueda
ejecutarse en un pc determinado?. Es decir alguna condicional que haga
referencia a su dirección física o algo así.

Gracias



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida