banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

#1 Mon 28 May 2001 22:23

Roddier Sebastien
Invité

fichiers temporaires

Bonjour a tous

je cherche a changer le repertoire de stockage des fichiers temporaires de Mapinfo: comment faire?

actuellement ces derniers sont stockes sous c:\windows\temp

merci

 

#2 Mon 28 May 2001 22:27

Jacques Paris
Invité

Re: fichiers temporaires

Sebastien,

Les repertoires qui sont definis par MI et l'utilisateur sont contenus dans
le fichier MAPINFOW.PRF qui est situe dans le repertoire principal de
WINDOWS. J'ai identifie leurs positions et contenus, mais il n'y a
apparemment pas de reference au repertoire des temporaires . J'en deduirais
que ce repertoire est celui defini par Windows pour toutes ses operations
temporaires.

À titre d'information, voici ce que j'ai pu lire (toute information
complementaire, confirmation ou correction sera la bienvenue) dans mon PRF.
Comme on peut le voir, a partir de l'enregistrement 9, ce sont tous les
repertoires definis dans Options | Preferences | Repertoires, a l'exception
du #12 dont je n'ai pas su trouver la fonction.

enregistrement#(*), positions hexadecimales du debut de la chaine dans
l'enregistrement , contenu du repertoire

0, 43, Derniere session ?
1, 7A, id?
2, 7E, id?
3, 82, id?

8, 0D, dernier wor?

9, 0D, Tables
10, 0D, Workspaces
11, 0D, Tools
12, 0D, ???(par defaut ...DATA)
28, 13, Custom Symbols
29, 13, Import files
30, 13, SQL queries
31, 13, Thematic templates
32, 13, Saved Queries
33, 13, New grids
34, 13, Crystal reports
35, 13, Graph support

(*) le premier enregistrement est #0, taille 256.

Pour connaitre le repertoire designe , on peut se servir de la fonction API
suivante:

Declare Function GetTempPath Lib kernel32.dll Alias GetTempPathA
(ByVal nBufferLength As Integer, lpBuffer As String) As Integer

que l'on utiliserait ainsi

dim temppath as string
dim slength as integer

temppath = Space(255) ' initialize the buffer to receive the path
slength = GetTempPath(255, temppath) ' read the path name
temppath = RTrim(temppath) ' extract data from the variable

Est-ce que la fonction symetrique existerait (SetTempPath?)? Je n'ai
qu'une documentation probablement incomplete du contenu de Kernel32.dll

Jacques Paris

 

#3 Tue 29 May 2001 22:26

Béatrice FERNANE
Invité

Re: fichiers temporaires

Bonjour,
Lorsque je modifie une table et que je vais regarder ce qui se passe dans les repertoires. Je m'apercois que pour la table : sans nom qui est constitue au maximum de cinq fichiers sans nom avec les extensions .tab, .map, .id, .ind, .dat s'ajoute des fichiers sans nom avec les extensions .tin , .tda et .tma sur la meme directory. Ces fichiers disparaissent lorsque l'on ferme la table MAPINFO. Il arrive quelquefois que ces fichiers restent meme apres avoir fermer le logiciel. Dans ce cas, on peut les effacer. Ne jamais les effacer si le logiciel travaille.

 

#4 Tue 29 May 2001 22:28

Jacques Paris
Invité

Re: fichiers temporaires

Beatrice,

Merci de la precision que vous apportez mais je pense que les fichiers
temporaires dont il est question sont differents de .Txx qui sont des
fichiers d'edition et qui restent attaches par principe a la table
principale. Nous parlions plutot des ~MAP000 qui sont generes dans certaines
operations comme celui du compactage d'une table qui entraine toute une
activite sur la fenetre MapBasic, comme

Create Table ~MAP0002 (id Char(10)) file C:MapInfodata~MAP0002.TMP
TYPE NATIVE Version 100
Create Map For ~MAP0002 CoordSys Earth Projection 8, 33,.....
Set Table ~MAP0002 FastEdit On Undo Off
Insert Into ~MAP0002 (id) Select id From ~MAP0001
Commit Table ~MAP0002
Set Table ~MAP0002 FastEdit Off Undo On

Theoriquement, ces ~MAP sont effacees quand l'operation se termine, mais ce
n'est pas toujours le cas, et il me faut assez souvent proceder a un
nettoyage du repertoire C:WindowsTemp ou elles sont assignees par defaut.

Pour les mordus, on pourrait devoir changer ce repertoire avec

Declare Function SetEnvironmentVariable Lib kernel32.dll Alias
SetEnvironmentVariableA
(ByVal lpName As String, ByVal lpValue As String) As integer
dim retval as integer
retval=SetEnvironmentVariable( TMP , nouveau_repertoire )

mais je n'arrive pas a lire les resultats, ni la situation originale
d'ailleurs, avec:

Declare Function GetEnvironmentVariable Lib kernel32.dll Alias
GetEnvironmentVariableA
(byval lpName As String, ByVal lpBuffer As String, byval nSize As Integer)
As integer

dim envvar, myvar as string
dim slength, nlen as integer

nlen=256
envvar=space(nlen)
myvar= TMP
slength=GetEnvironmentVariable(myvar,envvar,nlen)
if slength = 0 then
print "La variable " + myvar

 

#5 Thu 15 April 2004 09:36

Daniel Mafille
Invité

Re: fichiers temporaires

Bonjour,

Avec certaines requetes, MI cree des fichiers temporaires de la forme ~MAPxxxx.TMP (xxxx = chiffres).
Ces fichiers se trouvent en general sous C:\Documents and Settings\..... Lorsqu'arrive ~MAP9999.TMP, MI se bloque.
La seule solution consiste alors a vider le repertoire (ce qui prend du temps). Meme avec l'instruction Set Table toto FastEdit On Undo Off, les tables sont creees.
Existe-t'il un moyen d'eviter la creation de ces tables ?

Merci

 

#6 Mon 19 April 2004 05:09

Poupart, Geneviève
Invité

Re: fichiers temporaires

Bonjour,

Sur le site de Jacques Paris (http://www.paris-pc-gis.com/index.html), dans
la section Fichiers d'autres origines , l'outil Optimize ajoute un bouton
Close All Temporary Tables . Je pense qu'en fermant les fichiers
temporaires, ca les efface aussi.

 

#7 Mon 19 April 2004 05:09

Béatrice FERNANE
Invité

Re: fichiers temporaires

Bonjour,

Bien sur, les fichiers temporaires peuvent etre effaces. Cependant, prenez soin d'enregistrer vos tables en cours de modification avant de le faire. Il m'est arrive de perdre des donnees. Les fichiers temporaires peuvent contenir des modifications en cours, et, de ce fait ne peuvent pas etre effaces sans enregistrer.

cordialement

 

Pied de page des forums

Powered by FluxBB