PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV Mobile 2024 → [WM23] HmodifyStructure error if the HF files are in External SD Card (Android)
[WM23] HmodifyStructure error if the HF files are in External SD Card (Android)
Débuté par Jaume, 11 avr. 2018 08:45 - 3 réponses
Posté le 11 avril 2018 - 08:45
Hello, i get this error when some modification is made in a HF data file but only if the data files are in the external SD card.

Can somebody help me ?

ps: i think this error occurs from previous versions of WM also

===== Erreur =====
Date et heure=11/04/2018 08:35:21
Message=Impossible de renommer le fichier </storage/0000-0000/Android/data/com.softline.peritoline/files/config.fic> en </data/user/0/com.softline.peritoline/cache/hfPA4WM2>.
Message système=Que s'est-il passé ?
Impossible de renommer le fichier </storage/0000-0000/Android/data/com.softline.peritoline/files/config.fic> en </data/user/0/com.softline.peritoline/cache/hfPA4WM2>.

Code erreur : 70150
Niveau : erreur fatale
Code erreur WD55 : 150

Code d'erreur système : 18
Message d'erreur système :
Cross-device link
Dump de l'erreur du module 'libwd230hf.so' (23.0.45.2).
Informations de débogage :
IEWDHF=30.30
Module=<WDHF>
Version=<23.0.45.2>
Informations supplémentaires :
EIT_SRCFILE : </storage/0000-0000/Android/data/com.softline.peritoline/files/config.fic>
EIT_DSTFILE : </data/user/0/com.softline.peritoline/cache/hfPA4WM2>
Code=70150
Fonction WLangage=HModifieStructure
Traitement=Procédure globale gp_Inicializar_Ficheros
Pile WLangage=Procédure globale gp_Inicializar_Ficheros
Pile Java=fr.pcsoft.wdjava.core.erreur.WDErreurManager.a(Unknown Source)
fr.pcsoft.wdjava.database.hf.WDHF_Manager.a(Unknown Source)
fr.pcsoft.wdjava.database.hf.WDHF_Manager.a(Unknown Source)
fr.pcsoft.wdjava.api.WDAPIHF.hModifieStructure(Unknown Source)
fr.pcsoft.wdjava.api.WDAPIHF.hModifieStructure(Unknown Source)
com.softline.peritoline.wdgen.GWDCPGlobalProceduresComunes.fWD_gp_Inicializar_Ficheros(GWDCPGlobalProceduresComunes.java:52)
com.softline.peritoline.wdgen.GWDPSlmPeritoAndroid.initProjet(GWDPSlmPeritoAndroid.java:557)
fr.pcsoft.wdjava.core.application.WDProjet.demarrer(Unknown Source)
fr.pcsoft.wdjava.core.application.p.run(Unknown Source)
android.os.Handler.handleCallback(Handler.java:751)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:154)
android.app.ActivityThread.main(ActivityThread.java:6692)
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1468)
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1358)
Thread=id=1
name=main
priority=5
groupName=main

===== Application =====
Nom de l'application=Perito Line
Version de l'application=0.0.1.0
Nom du package=com.softline.peritoline
Date et heure de lancement=11/04/2018 08:35:21
Version du framework Android=23.0.181.0 (fr)

===== Appareil =====
Modèle=SM-G935F
Constructeur=samsung
Marque=samsung

===== Système =====
Numéro de version d'Android=7.0 (N)
Api Level Android=24
Mémoire de stockage interne totale=24,86 Go
Mémoire de stockage interne disponible=15,96 Go
Densité de l'écran=480
Résolution de l'écran=1080x1920
Posté le 11 avril 2018 - 13:20
Hi Jaune

what makes you say that this is an EXTERNAL SD card?

I'm asking for 2 reasons:
1. the path itself doesn't 'look' like an EXTERNAL sd card
2. the error is clearly a permission problem, and ifyou were on the
external sdcard, you shouldn't have this error as a program is normally
allowed to write there


Second problem : when you install/run your app does it ask for the
permission to read/write files, pictures, and so on? And do you says YES?

Best regards

--
Fabrice Harari
International WinDev, WebDev and WinDev mobile Consulting

Free Video Courses, free WXShowroom.com, open source WXReplication, open
source WXEDM.

More information on http://www.fabriceharari.com


Le 4/11/2018 à 12:45 AM, Jaume a écrit :
Hello, i get this error when some modification is made in a HF data file
but only if the data files are in the external SD card.

Can somebody help me ?

ps: i think this error occurs from previous versions of WM also

===== Erreur =====
Date et heure=11/04/2018 08:35:21
Message=Impossible de renommer le fichier
</storage/0000-0000/Android/data/com.softline.peritoline/files/config.fic>
en </data/user/0/com.softline.peritoline/cache/hfPA4WM2>.
Message système=Que s'est-il passé ?
Impossible de renommer le fichier
</storage/0000-0000/Android/data/com.softline.peritoline/files/config.fic>
en </data/user/0/com.softline.peritoline/cache/hfPA4WM2>.

Code erreur : 70150
Niveau : erreur fatale
Code erreur WD55 : 150

Code d'erreur système : 18
Message d'erreur système :
Cross-device link
Dump de l'erreur du module 'libwd230hf.so' (23.0.45.2).
Informations de débogage :
IEWDHF=30.30
Module=<WDHF>
Version=<23.0.45.2>
Informations supplémentaires :
EIT_SRCFILE :
</storage/0000-0000/Android/data/com.softline.peritoline/files/config.fic>
EIT_DSTFILE : </data/user/0/com.softline.peritoline/cache/hfPA4WM2>
Code=70150
Fonction WLangage=HModifieStructure
Traitement=Procédure globale gp_Inicializar_Ficheros
Pile WLangage=Procédure globale gp_Inicializar_Ficheros
Pile Java=fr.pcsoft.wdjava.core.erreur.WDErreurManager.a(Unknown Source)
fr.pcsoft.wdjava.database.hf.WDHF_Manager.a(Unknown Source)
fr.pcsoft.wdjava.database.hf.WDHF_Manager.a(Unknown Source)
fr.pcsoft.wdjava.api.WDAPIHF.hModifieStructure(Unknown Source)
fr.pcsoft.wdjava.api.WDAPIHF.hModifieStructure(Unknown Source)
com.softline.peritoline.wdgen.GWDCPGlobalProceduresComunes.fWD_gp_Inicializar_Ficheros(GWDCPGlobalProceduresComunes.java:52)

com.softline.peritoline.wdgen.GWDPSlmPeritoAndroid.initProjet(GWDPSlmPeritoAndroid.java:557)

fr.pcsoft.wdjava.core.application.WDProjet.demarrer(Unknown Source)
fr.pcsoft.wdjava.core.application.p.run(Unknown Source)
android.os.Handler.handleCallback(Handler.java:751)
android.os.Handler.dispatchMessage(Handler.java:95)
android.os.Looper.loop(Looper.java:154)
android.app.ActivityThread.main(ActivityThread.java:6692)
java.lang.reflect.Method.invoke(Native Method)
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1468)

com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1358)
Thread=id=1
name=main
priority=5
groupName=main

===== Application =====
Nom de l'application=Perito Line
Version de l'application=0.0.1.0
Nom du package=com.softline.peritoline
Date et heure de lancement=11/04/2018 08:35:21
Version du framework Android=23.0.181.0 (fr)

===== Appareil =====
Modèle=SM-G935F
Constructeur=samsung
Marque=samsung

===== Système =====
Numéro de version d'Android=7.0 (N)
Api Level Android=24
Mémoire de stockage interne totale=24,86 Go
Mémoire de stockage interne disponible=15,96 Go
Densité de l'écran=480
Résolution de l'écran=1080x1920
Posté le 13 avril 2018 - 12:44
Hi Fabrice,
I'm sure the files are into the external SD card because i can see them with the file explorer. My SD card is located at /storage/0000-0000

The app works perfectly with the files on the external SD card (there is no problem with permissions), but if you change a field or add a new one in a file, after the app is updated the hModifyStructure always fails and report this error.

The same app with the files into the internal memory, the hmodifyStructure works fine when you change or add a field .

Best regards
Jaume
Posté le 13 avril 2018 - 14:04
Hi Jaume

thank you for the explanations, the problem is much clearer now...

The error message says:
Impossible de renommer le fichier
</storage/0000-0000/Android/data/com.softline.peritoline/files/config.fic>
en </data/user/0/com.softline.peritoline/cache/hfPA4WM2>.

Now, as you stated that you have no problem working on the files that
are situated in
</storage/0000-0000/Android/data/com.softline.peritoline/files/config.fic>,
it means that the problem must be that the functions tries to create the
temporary file in a place where it is not allowed:

</data/user/0/com.softline.peritoline/cache/hfPA4WM2>

So you may want to try to use fcurrentdir to FORCE the current dir to
your external storage location before doing the hmodifystructure

with any luck, the function will use THAT location for it's temp file.

If that doesn't work, create a small demo project and send it to the
pcsoft free technical support ith detailed explanations

Best regards

--
Fabrice Harari
International WinDev, WebDev and WinDev mobile Consulting

Free Video Courses, free WXShowroom.com, open source WXReplication, open
source WXEDM.

More information on http://www.fabriceharari.com


Le 4/13/2018 à 4:44 AM, Jaume a écrit :
Hi Fabrice,
I'm sure the files are into the external SD card because i can see them
with the file explorer. My SD card is located at /storage/0000-0000

The app works perfectly with the files on the external SD card (there is
no problem with permissions), but if you change a field or add a new one
in a file, after the app is updated the hModifyStructure always fails
and report this error.

The same app with the files into the internal memory, the
hmodifyStructure works fine when you change or add a field .

Best regards
Jaume