Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Ejecucion xp_cmdshell para levantar .bat

3,195 views
Skip to first unread message

Rafael

unread,
Oct 11, 2002, 11:21:56 AM10/11/02
to
Hola,

Estoy tratando de ejecutar la instrucción abajo indicada.
Como allí se indica estoy tratando de levantar un
archivo .bat en el servidor DESARROLLO, sin embargo cuando
ejecuto la instruccion en ese mismo servidor por el Query
Analyzer, este parece quedarse en ejecución y no terminar
de ejecutar la instrucción (nunca levanta el NOTEPAD.EXE
el cual copié en el directorio Prueba del servidor
DESARROLLO). Revisé la permisología de mi usuario con el
administrador de bases de datos y pareciera tener todos
los permisos. Agradezco cualquier idea o sugerencia que
pudieran tener,

La instrucción es:

exec
master.dbo.xp_cmdshell '\\DESARROLLO\Prueba\interfaz.bat'

donde el contenido del archivo interfaz.bat es:

C:
cd C:\Prueba
NOTEPAD.EXE
echo listo


Gracias de antemano!,

Rafael

Miguel Egea

unread,
Oct 11, 2002, 12:34:57 PM10/11/02
to
Hola, ten en cuenta que esto se ejecuta en tu server, no puedes llamar a
aplicaciones que esperen que el usuario haga 'algo', si haces lo mismo con
dir c:\ por ejemplo que no espera nada, verás como si te devuelve el
resultado, naturalmente el directorio de tu servidor


--
Un Saludo
Miguel Egea
http://www.portalsql.com
PASS Spanish Group
Migue...@mvps.org
Microsoft MVP SQL-SERVER
"Rafael" <rar...@caf.com> escribió en el mensaje
news:221901c27139$efae3040$37ef2ecf@TKMSFTNGXA13...

Rafael

unread,
Oct 11, 2002, 3:25:00 PM10/11/02
to
Gracias por tu respuesta Miguel. Entiendo tu punto de
vista, de hecho incluso ejcuté una instrucción del tipo:

EXEC master.dbo.xp_cmdshell 'net send RARAUJO ''Hola'

y en efecto se ejecuta y recibo el mensaje en mi pantalla.

Si el hecho de ejecutar un .exe con el xp_cmdshell hace
que el programa espere algo a cambio y por ello no
culmine, me pregunto con que otras alternativas pudiera
contar,

gracias nuevamente por la información,

saludos,

Rafael


>-----Mensaje original-----

>.
>

Miguel Egea

unread,
Oct 12, 2002, 10:07:38 AM10/12/02
to
RAfael, no alcanzo a ver donde puedes necesitar eso, ten en cuenta que estás
hablando de cliente servidor, y lo que se ejecuta con xp_cmdshell, se
ejecuta en el servidor, por eso no debe estar esperando nada. otra opcion es
que lo ejecutes pero desde tu aplicación cliente . No sé, cuentanos algo
más...


--
Un saludo
Miguel Egea
http://www.portalsql.com
Microsoft SQL-SERVER MVP

"Rafael" <rar...@caf.com> escribió en el mensaje

news:014d01c2715b$e4556700$37ef2ecf@TKMSFTNGXA13...

Jorge Andrade

unread,
Oct 14, 2002, 8:47:08 AM10/14/02
to
Este comando não funciona MSDE porque criei um trigger e dá-me erro.

"Rafael" <rar...@caf.com> escreveu na mensagem
news:014d01c2715b$e4556700$37ef2ecf@TKMSFTNGXA13...

Rafael

unread,
Oct 23, 2002, 5:17:46 PM10/23/02
to
Miguel y Jorge, gracias por sus respuestas. El problema
eran permisos y tipo de usuario. Para solventar la
situación lo que hice fue correr el proceso con un usuario
administrador con todos los permisos de SQL (no con mi
usuario), y en particular sobre el directorio en el cual
tenía el proceso que quería levantar, de todas formas
anexo un mensaje recibido a mi cuenta particular que ayuda
tanto a entender mejor la situación como a resolverla,
muchas gracias

-----Mensaje original-----
De: Teodoro Sánchez Posadas [mailto:Te...@Real.com.mx]
Enviado el: Viernes, 11 de Octubre de 2002 06:34 p.m.
Para: ARAUJO, RAFAEL
Asunto: Re: Ejecucion xp_cmdshell para levantar .bat


Ya verificaste que el usuario con el que se esta
ejecutando el servicio de
SQL sea el que tiene todos los permisos.

A mi me sucedio algo similar, en mi maquina, tengo un
servidor de SQL, hice
una aplicacion en Visual Basic, si lo ejecutaba por linea
de comandos (DOS),
funcionada. Cuando lo intentaba ejecutar en el Query
Analizer, con el
xp_cmdshell, se quedaba colgado, resulto, que como hacia
referencia a un
directorio de otro equipo, el usuario con el que ejecutaba
mi SQL Server, no
tenia permiso. aún cuando mi usuario de windows si los
tenia.

Podrias verificar, si pudiese ser, que el usuario con el
que ejecutas tus
servicios de SQL, tiene permisos. Yo no creia que fueran
permisos, pero
ahora lo creo,

saludos

_____________________________________
Lic. Teodoro Sánchez Posadas
Encargado de Sistemas Real Resorts
Te...@Real.com.mx; Teo...@Hotmail.com
Tel. 52(998)8 81 72 22
Conm. 52(998)8 81 73 00 Ext. 5068


>-----Mensaje original-----

>.
>

Miguel Egea

unread,
Oct 23, 2002, 5:36:05 PM10/23/02
to
Me alegro de que el amigo Teo pudiese ayudarte, pensé que tu problema es que
querías pedir datos!!, en fin. Otra vez será. :-D.


--
Un saludo
Miguel Egea
http://www.portalsql.com
Microsoft SQL-SERVER MVP

"Rafael" <rar...@caf.com> escribió en el mensaje

news:c20d01c27ad9$a1dc81b0$2ae2...@phx.gbl...

jsanch...@gmail.com

unread,
Oct 1, 2014, 3:27:42 PM10/1/14
to
Perdonen yo tengo un problema similar pero en un trigger, es decir si executo el comando en una ventana de consulta normal lo hace sin problema, pero al hacerlo desde un trigger el proceso se queda colgado ¿alguna idea?

Gracias

0 new messages