General en cliente: escribir ficheros ini y log dentro de las carpetas de usuarios (C:\Documents and Settings)

git-svn-id: https://192.168.0.254/svn/Proyectos.Acana_FactuGES2/trunk@203 f4e31baf-9722-1c47-927c-6f952f962d4b
This commit is contained in:
David Arranz 2008-04-09 17:54:35 +00:00
parent 6f4a4267ef
commit da568a93ec
7 changed files with 158 additions and 56 deletions

View File

@ -4,7 +4,7 @@ interface
uses
SysUtils, Classes, Forms, uBizUsuarios, uBizEmpresas, uBizEjercicios, uControllerBase,
uEmpresasController, JclFileUtils, uUsuariosController, uHostManager;
uEmpresasController, uUsuariosController, uHostManager;
type
TDoLoadModulesEvent = procedure;
@ -86,7 +86,6 @@ type
FVAR_IDTIENDA: Integer;
FVAR_TIENDA: String;
FAppInfo : TJclFileVersionInfo;
FEmpresasController : IEmpresasController;
FUsuariosController: IUsuariosController;
FEmpresaActiva: IBizEmpresa;
@ -173,9 +172,9 @@ implementation
uses
Dialogs, uDialogUtils, cxControls, uUsuariosViewRegister,
uEmpresasViewRegister, uEjerciciosController,
uEmpresasViewRegister, uEjerciciosController, uAppInfoUtils,
//TEMPORAL
inifiles;
IniFiles;
procedure TAppFactuGES.CambiarEjercicio(const AIDEmpresa: Integer);
var
@ -245,13 +244,12 @@ begin
FUsuariosController := NIL; // Se crea la primera vez que se usa
FEmpresasController := NIL; // Se crea la primera vez que se usa
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
FHostManager := THostManager.Create(NIL);
with FHostManager do
begin
OnAfterLoad := AfterLoadModule;
// Ruta por defecto de los módulos
BPLPath := ExtractFilePath(Application.ExeName) + '\';
BPLPath := ExtractFilePath(Application.ExeName) + PathDelim;
end;
end;
@ -266,7 +264,6 @@ begin
FUsuariosController := NIL;
FEmpresasController := NIL;
FreeAndNIL(FAppInfo);
inherited;
end;
@ -290,12 +287,12 @@ end;
function TAppFactuGES.GetAppFullName: String;
begin
Result := GetAppName + ' ' + GetAppVersion;
Result := uAppInfoUtils.GetAppFullName;
end;
function TAppFactuGES.GetAppName: String;
begin
Result := FAppInfo.ProductName;
Result := uAppInfoUtils.GetAppName;
end;
function TAppFactuGES.GetAppSplashForm: IAppSplashForm;
@ -305,7 +302,7 @@ end;
function TAppFactuGES.GetAppVersion: String;
begin
Result := FAppInfo.ProductVersion;
Result := uAppInfoUtils.GetAppVersion;
end;
function TAppFactuGES.GetEjercicioActivo: IBizEjercicio;

Binary file not shown.

View File

@ -43,7 +43,35 @@
<Borland.Personality>Delphi.Personality</Borland.Personality>
<Borland.ProjectType>Package</Borland.ProjectType>
<BorlandProject>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Libreria base de FactuGES</Package_Options><Package_Options Name="ImplicitBuild">True</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<BorlandProject><Delphi.Personality><Parameters><Parameters Name="UseLauncher">False</Parameters><Parameters Name="LoadAllSymbols">True</Parameters><Parameters Name="LoadUnspecifiedSymbols">False</Parameters></Parameters><Package_Options><Package_Options Name="PackageDescription">Libreria base de FactuGES</Package_Options><Package_Options Name="ImplicitBuild">False</Package_Options><Package_Options Name="DesigntimeOnly">False</Package_Options><Package_Options Name="RuntimeOnly">False</Package_Options></Package_Options><VersionInfo><VersionInfo Name="IncludeVerInfo">True</VersionInfo><VersionInfo Name="AutoIncBuild">False</VersionInfo><VersionInfo Name="MajorVer">1</VersionInfo><VersionInfo Name="MinorVer">0</VersionInfo><VersionInfo Name="Release">0</VersionInfo><VersionInfo Name="Build">0</VersionInfo><VersionInfo Name="Debug">False</VersionInfo><VersionInfo Name="PreRelease">False</VersionInfo><VersionInfo Name="Special">False</VersionInfo><VersionInfo Name="Private">False</VersionInfo><VersionInfo Name="DLL">False</VersionInfo><VersionInfo Name="Locale">3082</VersionInfo><VersionInfo Name="CodePage">1252</VersionInfo></VersionInfo><VersionInfoKeys><VersionInfoKeys Name="CompanyName"></VersionInfoKeys><VersionInfoKeys Name="FileDescription"></VersionInfoKeys><VersionInfoKeys Name="FileVersion">1.0.0.0</VersionInfoKeys><VersionInfoKeys Name="InternalName"></VersionInfoKeys><VersionInfoKeys Name="LegalCopyright"></VersionInfoKeys><VersionInfoKeys Name="LegalTrademarks"></VersionInfoKeys><VersionInfoKeys Name="OriginalFilename"></VersionInfoKeys><VersionInfoKeys Name="ProductName"></VersionInfoKeys><VersionInfoKeys Name="ProductVersion">1.0.0.0</VersionInfoKeys></VersionInfoKeys><Excluded_Packages>
<Excluded_Packages Name="$(BDS)\Bin\dclintraweb_90_100.bpl">VCL for the Web Design Package for CodeGear RAD Studio</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclwebsnap100.bpl">CodeGear WebSnap Components</Excluded_Packages>
<Excluded_Packages Name="$(BDS)\bin\dclsoap100.bpl">CodeGear SOAP Components</Excluded_Packages>
@ -58,47 +86,6 @@
<DelphiCompile Include="Base.dpk">
<MainSource>MainSource</MainSource>
</DelphiCompile>
<DCCReference Include="..\Modulos\Facturas de cliente\adortl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxIntl6D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\cxIntlPrintSys3D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\DataAbstract_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dbrtl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dclIndyCore.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\designide.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\dsnap.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\GUISDK_D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\IndyCore.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\IndyProtocols.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\IndySystem.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\Jcl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JclVcl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JSDialog100.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvCmpD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvCoreD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvDlgsD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvMMD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvNetD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvPageCompsD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvStdCtrlsD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\JvSystemD11R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\pckMD5.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\pckUCDataConnector.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\pckUserControl_RT.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\PluginSDK_D10R.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\PngComponentsD10.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\PNG_D10.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\RemObjects_Core_D11.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\rtl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\TB2k_D10.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\tbx_d10.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vcl.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vclactnband.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vcldb.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vcljpg.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\VclSmp.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\vclx.dcp" />
<DCCReference Include="..\Modulos\Facturas de cliente\xmlrtl.dcp" />
<DCCReference Include="..\Servicios\FactuGES_Intf.pas" />
<DCCReference Include="Conexion\uConfigurarConexion.pas">
<Form>fConfigurarConexion</Form>
@ -123,10 +110,45 @@
<Form>dmBase</Form>
<DesignClass>TDataModule</DesignClass>
</DCCReference>
<DCCReference Include="Utiles\adortl.dcp" />
<DCCReference Include="Utiles\ClassRegistry\uClassRegistryUtils.pas" />
<DCCReference Include="Utiles\ClassRegistry\uEditorRegistryUtils.pas" />
<DCCReference Include="Utiles\ClassRegistry\uInformeRegistryUtils.pas" />
<DCCReference Include="Utiles\ClassRegistry\uViewRegistryUtils.pas" />
<DCCReference Include="Utiles\cxIntl6D11.dcp" />
<DCCReference Include="Utiles\cxIntlPrintSys3D11.dcp" />
<DCCReference Include="Utiles\DataAbstract_Core_D11.dcp" />
<DCCReference Include="Utiles\dbrtl.dcp" />
<DCCReference Include="Utiles\dclIndyCore.dcp" />
<DCCReference Include="Utiles\designide.dcp" />
<DCCReference Include="Utiles\dsnap.dcp" />
<DCCReference Include="Utiles\GUISDK_D11.dcp" />
<DCCReference Include="Utiles\IndyCore.dcp" />
<DCCReference Include="Utiles\IndyProtocols.dcp" />
<DCCReference Include="Utiles\IndySystem.dcp" />
<DCCReference Include="Utiles\Jcl.dcp" />
<DCCReference Include="Utiles\JclVcl.dcp" />
<DCCReference Include="Utiles\JSDialog100.dcp" />
<DCCReference Include="Utiles\JvCmpD11R.dcp" />
<DCCReference Include="Utiles\JvCoreD11R.dcp" />
<DCCReference Include="Utiles\JvCtrlsD11R.dcp" />
<DCCReference Include="Utiles\JvDlgsD11R.dcp" />
<DCCReference Include="Utiles\JvMMD11R.dcp" />
<DCCReference Include="Utiles\JvNetD11R.dcp" />
<DCCReference Include="Utiles\JvPageCompsD11R.dcp" />
<DCCReference Include="Utiles\JvStdCtrlsD11R.dcp" />
<DCCReference Include="Utiles\JvSystemD11R.dcp" />
<DCCReference Include="Utiles\pckMD5.dcp" />
<DCCReference Include="Utiles\pckUCDataConnector.dcp" />
<DCCReference Include="Utiles\pckUserControl_RT.dcp" />
<DCCReference Include="Utiles\PluginSDK_D10R.dcp" />
<DCCReference Include="Utiles\PngComponentsD10.dcp" />
<DCCReference Include="Utiles\PNG_D10.dcp" />
<DCCReference Include="Utiles\RemObjects_Core_D11.dcp" />
<DCCReference Include="Utiles\rtl.dcp" />
<DCCReference Include="Utiles\TB2k_D10.dcp" />
<DCCReference Include="Utiles\tbx_d10.dcp" />
<DCCReference Include="Utiles\uAppInfoUtils.pas" />
<DCCReference Include="Utiles\uCalculosUtils.pas" />
<DCCReference Include="Utiles\uDataTableUtils.pas" />
<DCCReference Include="Utiles\uDateUtils.pas" />
@ -140,6 +162,13 @@
<DCCReference Include="Utiles\uPasswordUtils.pas" />
<DCCReference Include="Utiles\uSistemaFunc.pas" />
<DCCReference Include="Utiles\uStringsUtils.pas" />
<DCCReference Include="Utiles\vcl.dcp" />
<DCCReference Include="Utiles\vclactnband.dcp" />
<DCCReference Include="Utiles\vcldb.dcp" />
<DCCReference Include="Utiles\vcljpg.dcp" />
<DCCReference Include="Utiles\VclSmp.dcp" />
<DCCReference Include="Utiles\vclx.dcp" />
<DCCReference Include="Utiles\xmlrtl.dcp" />
</ItemGroup>
</Project>
<!-- EurekaLog First Line

Binary file not shown.

View File

@ -33,15 +33,26 @@ implementation
{$R *.dfm}
uses
Forms, FactuGES_Intf, Variants, uDataModuleConexion;
Forms, FactuGES_Intf, Variants, uDataModuleConexion,
uSistemaFunc, SHFolder, uAppInfoUtils;
const
CONFIG_INI_FILE = 'config.ini';
{ TdmConfiguracion }
constructor TdmConfiguracion.Create(AOwner: TComponent);
var
AIniFile : String;
begin
inherited;
FIniFile := TIniFile.Create(ChangeFileExt(Application.ExeName, '.ini' ) );
AIniFile := GetSpecialFolderPath(CSIDL_COMMON_APPDATA); //[All Users]\Application Data
AIniFile := AIniFile + PathDelim + 'Rodax Software' + PathDelim + GetAppName + PathDelim;
if not DirectoryExists(AIniFile) then
ForceDirectories(AIniFile);
FIniFile := TIniFile.Create(AIniFile + CONFIG_INI_FILE);
end;
function TdmConfiguracion.DarValor(const CODIGO: String): Variant;

View File

@ -0,0 +1,53 @@
unit uAppInfoUtils;
interface
function GetAppName: String;
function GetAppVersion: String;
function GetAppFullName: String;
implementation
uses
Forms, SysUtils, JclFileUtils;
function GetAppName: String;
var
FAppInfo : TJclFileVersionInfo;
begin
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
try
Result := FAppInfo.ProductName;
finally
FreeANDNil(FAppInfo);
end;
end;
function GetAppVersion: String;
var
FAppInfo : TJclFileVersionInfo;
begin
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
try
Result := FAppInfo.ProductVersion;
finally
FreeANDNil(FAppInfo);
end;
end;
function GetAppFullName: String;
var
FAppInfo : TJclFileVersionInfo;
begin
FAppInfo := TJclFileVersionInfo.Create(Application.ExeName);
try
Result := FAppInfo.ProductName + ' ' + FAppInfo.ProductVersion;
finally
FreeANDNil(FAppInfo);
end;
end;
end.

View File

@ -38,14 +38,26 @@ function DarFechaFichero (Executable : String) : String;
procedure CopiarFichero(const Origen, Destino: string);
procedure DoDelTree( TheDir : String);
procedure Deltree(DirToKill : String; KillChoosenDir : Boolean);
function GetSpecialFolderPath(folder : integer) : string;
implementation
uses
SysUtils, Windows, Dialogs, JclFileUtils,
Messages, Classes, Graphics, Controls, Forms,
StdCtrls;
StdCtrls, SHFolder;
function GetSpecialFolderPath(folder : integer) : string;
const
SHGFP_TYPE_CURRENT = 0;
var
path: array [0..MAX_PATH] of char;
begin
if SUCCEEDED(SHGetFolderPath(0, folder, 0, SHGFP_TYPE_CURRENT, @path[0])) then
Result := path
else
Result := '';
end;
function Ejecutar (const LineaComando: String; Oculto, Esperar: Boolean): Boolean;
var