Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Delphi en windows ingles (https://www.clubdelphi.com/foros/showthread.php?t=63955)

ruiznono 10-03-2009 18:48:37

Delphi en windows ingles
 
Hola, os comento por si alguien me puede ayudar; tengo un programa en delphi, el cual corre estupendamente en un Windows xp, pero mi duda es si funcionará correctamente al instalarlo en un windows xp ingles y si dará problemas al hacer las llamadas a los correspondientes archivos ubicados en C:\Archivos de programas...... etc.

GRACIAS

roman 10-03-2009 18:59:59

No entiendo a qué tipo de problemas te refieres. En principio no tendría porqué haber ningún problema.

Ahora, si lo que te preocupa son las rutas de directorios, bueno, ciertamente tendrás problemas si pusiste literlamente "C:\Archivos de programa\...". Hay funciones de la API (creo que una se llama ShGetAppFolder) que te devuelven las rutas reales de ciertas carpetas. ësas son las que debes usar, aunque esto deberías hacerlo siempre independientemente del idioma.

// Saludos

MAXIUM 10-03-2009 19:01:44

Independiente del idioma, para llamar a dicha carpeta y subcarpetas de ellas, debes hacerlo con "variables de entorno". En este caso con %PROGRAMFILES%

Para S.O basado en NT (NT, 2000, XP, etc.)
Código:

%ALLUSERSPROFILE%
%APPDATA%
%CD%
%CMDCMDLINE%
%CMDEXTVERSION%
%COMMONPROGRAMFILES%
%DATE%
%ERRORLEVEL%
%HOMEDRIVE%
%HOMEPATH%
%HOMESHARE%
%LOGONSERVER%
%MORE%
%NUMBER_OF_PROCESSORS%
%OS%
%OS2LIBPATH%
%PATHEXT%
%PROCESSOR_ARCHITECTURE%
%PROCESSOR_IDENTIFER%
%PROCESSOR_LEVEL%
%PROCESSOR_REVISION%
%PROGRAMFILES%
%RANDOM%
%SESSIONNAME%
%SYSTEMDRIVE%
%SYSTEMROOT%
%TIME%
%USERDOMAIN%
%USERNAME%
%USERPROFILE%

Para S.O basado en Win9X (incluye los de MSDOS)
Código:

%CMDLINE%
%COMPUTERNAME%
%TMP%
%winbootdir%
%windir%
%WINPMT%

Para MSDOS
Código:

%APPEND%
%BLASTER%
%COMSPEC%
%COPYCMD%
%DIRCMD%
%DOSSHELL%
%MSDOSDATA%
%NO_SEP%
%PATH%
%PROMPT%
%TEMP%
%TZ%


Neftali [Germán.Estévez] 10-03-2009 19:03:43

Si has hecho las llamadas utilizando na cadena, está claro que no te los va a encontrar.

Si utilizas esta función de Khronos con la constante CSIDL_PROGRAM_FILES deberías obtener esa carpeta independientemente del idioma de la instalación.

Rolando Glez 13-11-2009 17:11:27

Obtener variables de entorno del msdos
 
Con el comando SET de msdos puedes ver la instancia de las variables de
entorno del msdos, cada una de esta variable se instancia con un atributo,
dentro de esas variable esta la variable Programfiles , que es en tu caso la que deseas obtener, mediante esta Function podras obtener el valor
de cada una de estas variables

Function TCentercontrolform.GETpathprograms:string;
var
buffer:char
pathprogram_installed:string;

begin
GetMem(buffer,200); {Reservamos sitio para la respuesta}
GetEnvironmentVariable(PChar('ProgramFiles'),buffer,200);
pathprogram_installed:=StrPas(buffer);
FreeMem(buffer,200);
result:=pathprogram_installed;
end;

como ves aqui se obtiene el path donde se instalan las aplicaciones,la funsion se puede modificar para obtener cualquier variable de entorno
del msdos como domain,domainuser etc, pero en tu caso solo necesitas
obtener Programfiles ,bueno espero que con esta funsion resuelva tu problema saludos


La franja horaria es GMT +2. Ahora son las 14:44:52.

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