Page 1 of 1
Cómo especificar Path del servidor? (SOLUCIONADO)
Posted: Tue Jan 31, 2017 7:03 pm
by Armando
Hola Amigos del foro:
Tengo una aplicación instalada en un servidor, mapeo la unidad y me conecto desde
una PC terminal.
El tema es que necesito crear una carpeta en el servidor pero no me la esta creando
con el siguiente código:
Code: Select all
cDir := "\" + CurDir(CurDrive() + ":\") + "\Fichas"
nError := MakeDir(cDir)
Y la ruta correcta al servidor es:
Cómo debo especificarla sin usar constantes??
Gracias por el apoyo
Re: Cómo especificar Path del servidor?
Posted: Wed Feb 01, 2017 4:06 pm
by karinha
Code: Select all
PRIVATE cDirExe
IF FWVERSION = "FWHX 16.12"
cDirExe := GETCURDIR()
ELSE
cDirExe := CURDRIVE() + ":\" + GETCURDIR()
ENDIF
IF SUBS( cDirExe, LEN(ALLTRIM(cDirExe)) , 1 )="\"
cDirExe:= SUBS( cDirExe, 1 , LEN(ALLTRIM(cDirExe))-1 )
ENDIF
LCHDIR( cDirExe )
SET DEFAULT TO
IF .NOT. lIsDir( cDirexe+"\carpeta" )
lMkDir( UPPER( cDirexe+"\carpeta" ) )
ENDIF
Re: Cómo especificar Path del servidor?
Posted: Tue Feb 14, 2017 7:36 pm
by Armando
Karinha:
Disculpa la tardanza, no me funciono tu aportación.
Si entro a la red desde una pc terminal, luego a la aplicación que está
instalada en el servidor, en el explorador de archivo aparece así
Con tu ejemplo queda así
\\Nominas
Alguna otra idea?
Saludos
Re: Cómo especificar Path del servidor?
Posted: Wed Feb 15, 2017 6:09 pm
by karinha
Mira se esto ayuda:
Code: Select all
// Many thanks to Jim Gale for his superb feed-back
#include "FiveWin.ch"
#include "struct.ch"
//------------------------------------------------------------------------//
function Main()
local cLongName := Space( 256 )
local nNamePos := 0
local hFile
lMkDir( "this is a long name directory" )
LCreat( "this is a long filename file" )
MsgInfo( GetFullPathName( "thisis~1", Len( cLongName ),;
@cLongName, @nNamePos ) )
MsgInfo( cLongName )
MsgInfo( nNamePos ) // this returns an invalid value
MsgInfo( "LongName: " + GetLongFileName( "thisis~1" ) )
hFile = FOpen( "tutor01.prg" )
FCommit( hFile )
FClose( hFile )
MsgInfo( "ok" )
return nil
//------------------------------------------------------------------------//
function GetLongFileName( cShortName )
local oWin32FindData
STRUCT oWin32FindData
MEMBER nFileAttributes AS DWORD
MEMBER nCreationTime AS STRING LEN 8
MEMBER nLastReadAccess AS STRING LEN 8
MEMBER nLastWriteAccess AS STRING LEN 8
MEMBER nSizeHight AS DWORD
MEMBER nSizeLow AS DWORD
MEMBER nReserved0 AS DWORD
MEMBER nReserved1 AS DWORD
MEMBER cFileName AS STRING LEN 260
MEMBER cAltName AS STRING LEN 14
ENDSTRUCT
FindFirstFile( cShortName, oWin32FindData:cBuffer )
return oWin32FindData:cFileName
//------------------------------------------------------------------------//
DLL32 Function GetFullPathName( lpszFile AS LPSTR, cchPath AS DWORD,;
lpszPath AS LPSTR, @nFilePos AS PTR ) AS DWORD ;
PASCAL FROM "GetFullPathNameA" LIB "kernel32.dll"
DLL32 FUNCTION FindFirstFile( cFile AS LPSTR, cWin32DataInfo AS LPSTR ) ;
AS LONG PASCAL FROM "FindFirstFileA" LIB "kernel32.dll"
//------------------------------------------------------------------------//
Re: Cómo especificar Path del servidor?
Posted: Thu Feb 16, 2017 4:27 pm
by Francisco Horta
Armando,
yo lo hago asi:
IF ! FILE( cFilePath( GetModuleFilename( GetInstance() ) ) + "documentos" )
lMkDir("documentos")
ENDIF
Saludos
Re: Cómo especificar Path del servidor?
Posted: Thu Feb 16, 2017 4:34 pm
by karinha
És verdad, desculpa mi falla:
Code: Select all
PRIVATE cDirExe := cFILEPATH(GETMODULEFILENAME(GETINSTANCE()))
Saludos.
Re: Cómo especificar Path del servidor? (SOLUCIONADO)
Posted: Thu Mar 16, 2017 4:35 pm
by Armando
Paco Horta:
Hasta ahora pude probar tu sugerencia y va de 100.
Muchas gracias a ambos, Paco y Karinha
Saludos
Re: Cómo especificar Path del servidor? (SOLUCIONADO)
Posted: Thu Mar 16, 2017 6:29 pm
by acuellar
Yo lo hago así
Code: Select all
ExeOn:=hb_CurDrive()+":\"+CURDIR()+"\"
Re: Cómo especificar Path del servidor? (SOLUCIONADO)
Posted: Thu Mar 16, 2017 7:54 pm
by Armando
Ademar:
Gracias por el ejemplo.
Saludos