Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-07-2008
Avatar de Gaim2205
Gaim2205 Gaim2205 is offline
Miembro
 
Registrado: ago 2007
Ubicación: Durango, Mexico
Posts: 144
Poder: 17
Gaim2205 Va por buen camino
problema con xp_cmdshell

Hola amigos, tengo el siguiente trigger en mi BD sql server 2000
Código SQL [-]
ALTER      TRIGGER trgUddate
ON dbo.POORDLIN_SQL
FOR UPDATE

AS

If UPDATE(exp_unit_cost)
BEGIN

PRINT('AFTER Trigger [trgUddate] - Executed')

exec master.dbo.xp_cmdshell '"C:\Archivos de programa\Vineyardsoft\KnowledgeSync 2000\Bin\KS_Event.exe" 
@admin;password/schedule=prueba'

END
GO

Pero al ejecutarse obtengo el error:
'C:\Archivos' is not recognized as an internal or external command,
operable program or batch file.

Esa es la ruta correcta a la aplicación, segun veo al encontrar el primer espacio en blanco corta la cadena. Deberia hacer esto? Como lo soluciono? Porque tampoco me acepta la ruta usando la tilde asi "C:\Archiv~1\...... etc, etc KS_Event.exe"

Gracias por su ayuda. Saludos.

Última edición por Gaim2205 fecha: 16-07-2008 a las 18:07:57.
Responder Con Cita
  #2  
Antiguo 16-07-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
http://msdn.microsoft.com/es-es/library/ms175046.aspx
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #3  
Antiguo 16-07-2008
Avatar de Gaim2205
Gaim2205 Gaim2205 is offline
Miembro
 
Registrado: ago 2007
Ubicación: Durango, Mexico
Posts: 144
Poder: 17
Gaim2205 Va por buen camino
Pues si, creo que eso es justo lo que estoy haciendo:

'"C:\Archivos de programa\Vineyardsoft\KnowledgeSync 2000\Bin\KS_Event.exe"
@admin;password/schedule=prueba'

Las comillas sencillas al inicio y al final, con comillas dobles delimitando la ruta.

Es por eso que acudo a ustedes, ya el material que he encontrado en mis busquedas por internet no me ha servido. Gracias.

Actualización: Encontré la pagina http://support.microsoft.com/kb/266224 Y procedí a realizar el archivo por lotes al que llamé simplemente test.bat y lo puse en C:\

pero aun asi al ejecutar exec master.dbo.xp_cmdshell "c:\test.bat" sale el mismo error. Tratando con comillas dobles, simples, todo...

Si alguien se ha encontrado con lo mismo o tiene alguna idea, poor favor contestar. Gracias.

Última edición por Gaim2205 fecha: 16-07-2008 a las 19:16:32.
Responder Con Cita
  #4  
Antiguo 22-03-2011
Flecha Flecha is offline
Miembro
 
Registrado: nov 2006
Posts: 59
Poder: 18
Flecha Va por buen camino
Hola.
Hace ya casi 3 años desde que se abrió este hilo, y es más que probable que quien lo abrió ya haya encontrado la solucón. Pero tengo una respuesta.

XP_CMDSHELL no reconoce nombres largos. Es decir, que te va a dar igual encerrar o no la ruta y el nombre del ejecutable entre comillas dobles ("). Tienes que escribir el nombre y su ruta haciendo uso de los nombres cortos (los 8.3 de MS-DOS de toda la vida).

Aunque la llamada al ejecutable la metas dentro de un .BAT, el error persiste porque sigue ejecutándose dentro del "perfil" o "entorno" del SQL-Server.

Un problema parecido me estoy encontrando yo con otra cosa, y me estoy volviendo loco para intentar escapar del problema. Lo mío no se soluciona con los nombres 8.3 de MS-DOS.

Un saludo.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
comando xp_cmdshell... dunia_lv MS SQL Server 2 12-05-2006 03:02:29


La franja horaria es GMT +2. Ahora son las 00:41:48.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi