Merci François,
1 ) - Voici les deux macros qui font intervenir un chemin.
La première, EnregistrerChemin(PysEvent), fonctionne correctement. Le
chemin enregistré dans la base est correct.
La seconde, ApercuImage, est le siège de l'erreur
sub EnregistrerChemin(PysEvent)
'Xray.thisdocument
'------------------------------
thiscomponent.drawPage.forms.getByName("MainForm").getByName("txtFle_Chemin").Text
=_
PysEvent.Source.Text
thiscomponent.drawPage.forms.getByName("MainForm").getByName("txtFle_Chemin").commit
'
thiscomponent.drawPage.forms.getByName("Standard").getByName("txttitre").Text
=_
' PysEvent.Source.Text
'
thiscomponent.drawPage.forms.getByName("Standard").getByName("txttitre").commit
' extrait le nom du fichier
Control=ThisComponent.drawpage.Forms("MainForm").getByName("txtFle_Chemin")
chemin = Control.text
Dim I%, Point%, Slash%
For I = Len(chemin) To 1 Step -1
If Mid(chemin, I, 1) = "." Then Exit For
Next
Point = I
For I = Point + 1 To 1 Step -1
If Mid(chemin, I, 1) = "\" Then Exit For
Next
Slash = I
nom = Mid(chemin, Slash + 1, Point - Slash - 1)
'
thiscomponent.drawPage.forms.getByName("Standard").getByName("txtFle_Nom").Text
=_
' nom
'
thiscomponent.drawPage.forms.getByName("Standard").getByName("txtFle_Nom").commit
end sub
Sub ApercuImage
' xray thisComponent
'--------------
Dim Control as object, txtFle_Nom, txtFle_chemin as string
Dim chemin, nom as String
Dim ShExec As Object
Dim Fichier As String
' Control=ThisComponent.drawpage.Forms("MainForm").getByName("txttitre")
' nom = Control.text
Control=ThisComponent.drawpage.Forms("MainForm").getByName("txtFle_Chemin")
chemin = Control.text
Fichier = Chemin + "\" + nom
' Fichier = Chemin
ShExec = createUnoService("com.sun.star.system.SystemShellExecute")
ShExec.execute(convertToURL( Fichier ) , "", 0)
End Sub
2 ) - Par ailleurs,
> si le fonctionnement est
prévu pour les plateformes Windows et Linux il faudra sans doute
veiller à ce que les chemins de tes documents soient gérés
différemment selon que l'on est sous Windows ou Linux.
Je n'ai jamais rencontré un problème de chemin. Je ne voie pas comment
gérer les chemins sous Ubuntu.
Cordialement
Papy
//****************************************************************************
Le 23/08/2010 19:08, François Gatto a écrit :
Bonsoir Jean,
Le 23 août 2010 17:33, Jean Sympa<[email protected]> a écrit :
Merci François,
J'ai corrigé la macro. J'ai encore une erreur. Le-fichier est introuvable.
Je constate que le chemin se termine par[\.]. C'est sans doute là que siège
l'erreur!
Oui !
Je ne peux regarder ton code, mais s'il ajoute effectivement un
Antislash à la fin du nom de fichier ce n'est pas normal.
Par ailleurs, je n'ai pas testé la base, si le fonctionnement est
prévu pour les plateformes Windows et Linux il faudra sans doute
veiller à ce que les chemins de tes documents soient gérés
différemment selon que l'on est sous Windows ou Linux.
Celui qui enregistre un élément dans la base ne devrait pas se
préoccuper de cela, c'est à toi d'établir les conversions selon le
système.
Cordialement
Papy
Cordialement
François Gatto
//***********************************************************************
Le 23/08/2010 15:36, François Gatto a écrit :
Bonjour,
Le 23/08/2010 11:51, Jean Sympa a écrit :
Erreurs sous Ubuntu 10,04
L'application se comporte normalement sous Windows 7. Je la transpose
sur Ubuntu 0,04.
J'ai l'erreur suivante :
Cordialement
Sous LINUX tu dois respecter deux choses : le séparateur et l'adressage.
Un chemin Linux s'écrit de cette façon :
/[.]dossier/[.]sous-dossier/[.]nomfichier.extension
où
- le premier slash / représente la racine, les autres sont représentatifs de
l'arborescence,
- [.] option pour masquer un dossier ou fichier
NB : l'extension peut être absente pour certains fichiers
Le séparateur sera donc "/"
L'adressage sera du genre /home/francois/Documents/monfichier.ext
ET avec OpenOffice cet adressage sera réalisé via la fonction ConvertToURL()
Ainsi dans ton programme tu devras écrire quelque chose comme :
ShExec.execute( convertToURL( Fichier ) , "", 0 )
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]