Speicherpfad für Makros
Moderator: Moderatoren
-
- **
- Beiträge: 34
- Registriert: Fr, 06.11.2009 05:49
Speicherpfad für Makros
Hallo.
Im Menü Extras | Optionen | OpenOffice.org | Pfade kann man ja diverse Speicherpfade setzen. Aber einen Pfad für Makros vermisse ich dort. Wo kann man den angeben?
Kann man den Pfad notfalls manuell hinzufügen? Unter Win7 z.B. hier:
C:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user\registry\data\org\openoffice\Office\Paths.xcu
Peter
Im Menü Extras | Optionen | OpenOffice.org | Pfade kann man ja diverse Speicherpfade setzen. Aber einen Pfad für Makros vermisse ich dort. Wo kann man den angeben?
Kann man den Pfad notfalls manuell hinzufügen? Unter Win7 z.B. hier:
C:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user\registry\data\org\openoffice\Office\Paths.xcu
Peter
Re: Speicherpfad für Makros
Ich gehe davon aus das das möglich ist, warum probierst Du es nicht aus?Kann man den Pfad notfalls manuell hinzufügen?
(Wie entsprechende Einträge aussehen kannst Du z.B. aus:
C:\Programme\OpenOffice.org 3\Basis\share\registry\data\org\openoffice\Office\Paths.xcu
entnehmen.)
Gruß
Stephan
-
- **
- Beiträge: 34
- Registriert: Fr, 06.11.2009 05:49
Re: Speicherpfad für Makros
Wie heißt denn bei Makros das oor:name-Attribut für den <node>-Knoten?Stephan hat geschrieben:Ich gehe davon aus das das möglich ist, warum probierst Du es nicht aus?
<node oor:name="AutoText">
<node oor:name="AutoCorrect">
<node oor:name="??????????">
Peter
Re: Speicherpfad für Makros
Warum wohl schrieb ich:Wie heißt denn bei Makros das oor:name-Attribut für den <node>-Knoten?
Ich kann dort ganz einfach entnehmen das der Name "Basic" ist und kann mir nicht vorstellen das bei Dir dieser Eintrag fehlt.(Wie entsprechende Einträge aussehen kannst Du z.B. aus:
C:\Programme\OpenOffice.org 3\Basis\share\registry\data\org\openoffice\Office\Paths.xcu
entnehmen.)
Gruß
Stephan
-
- **
- Beiträge: 34
- Registriert: Fr, 06.11.2009 05:49
Re: Speicherpfad für Makros
Glaub' es ruhig. Der Eintrag war bisher nicht da. Ich habe ihn jetzt hinzugefügt:Stephan hat geschrieben:Ich kann dort ganz einfach entnehmen das der Name "Basic" ist und kann mir nicht vorstellen das bei Dir dieser Eintrag fehlt.
Code: Alles auswählen
<node oor:name="Basic">
<prop oor:name="UserPaths" oor:type="oor:string-list">
<value/>
</prop>
<prop oor:name="WritePath" oor:type="xs:string">
<value>file:///E:/Users/Peter/AppData/Roaming/OpenOffice.org/3/user/basic</value>
</prop>
</node>
Peter
Re: Speicherpfad für Makros
Glaub' es ruhig. Der Eintrag war bisher nicht da.
Das verstehe ich dann schlicht nicht denn OOo muß die Makros ja von Haus aus irgendwo speichern und die von mir genannte dAtei ist die dAtei welche , meines Wissens, die dafür nötigen Defaults enthält.
Wieso "ihn"? Dein Eintrag betrifft augenscheinlich wegen:Ich habe ihn jetzt hinzugefügt:
Code: Alles auswählen
<prop oor:name="UserPaths" oor:type="oor:string-list">
C:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user\registry\data\org\openoffice\Office\Paths.xcu
ich jedoch sprach von:
C:\Programme\OpenOffice.org 3\Basis\share\registry\data\org\openoffice\Office\Paths.xcu
und wenn es dort keinen Pfadeintrag gab ist mir das schleierhaft, weil mir dann nicht erklärlich ist woher OOo die Angaben zum Speichern der Makros bezieht, denn irgendwo muß es diese ja speichen.
dann kann ich Dir nicht weiterhelfen.Bringt aber nichts. Makros werden immer noch auf C: gespeichert statt auf E: Bei den anderen Einträgen funktioniert es.
Allenfalls würde ich noch probieren die Änderung versuchsweise in der 'zentralen' DAtei:
C:\Programme\OpenOffice.org 3\Basis\share\registry\data\org\openoffice\Office\Paths.xcu
zu probieren.
GRuß
Stephan
-
- **
- Beiträge: 34
- Registriert: Fr, 06.11.2009 05:49
Re: Speicherpfad für Makros
Sorry. Hatte nur das Ende des Pfads beachtet. In der anderen Paths.xcu ist der Eintrag tatsächlich da und ich habe den Pfad entsprechend geändert. Funktioniert aber auch nicht. Wäre zudem aber nicht schön, denn die Einstellung würde dann ja für alle User gelten.Stephan hat geschrieben:ich jedoch sprach von:
C:\Programme\OpenOffice.org 3\Basis\share\registry\data\org\openoffice\Office\Paths.xcu
Die Makros werden ja gespeichert. Nämlich hier:Stephan hat geschrieben:[...] weil mir dann nicht erklärlich ist woher OOo die Angaben zum Speichern der Makros bezieht, denn irgendwo muß es diese ja speichen.
C:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user\basic\Standard\Module1.xba
Dort kann ich Änderungen die ich unter "MeineMakros" speichere wiederfinden. Ich möchte Sie aber auf E: und nicht auf C: Und eben das funktioniert für die anderen Einträge wie AutoCorr, AutoText, etc. problemlos - nur eben für Basic nicht.
Funktioniert auch nicht. "MeineMakros" werden immer noch auf C: gespeichert. Hier der Eintrag aus der zentalen Datei:Stephan hat geschrieben:Allenfalls würde ich noch probieren die Änderung versuchsweise in der 'zentralen' DAtei:
C:\Programme\OpenOffice.org 3\Basis\share\registry\data\org\openoffice\Office\Paths.xcu
Code: Alles auswählen
<node oor:name="Basic" oor:op="fuse" oor:mandatory="true">
<node oor:name="InternalPaths">
<node oor:name="$(insturl)/share/basic" oor:op="fuse"/>
</node>
<prop oor:name="WritePath">
<value>file:///E:/Users/Peter/AppData/Roaming/OpenOffice.org/3/user/basic</value>
</prop>
</node>
Re: Speicherpfad für Makros
mir ist vollkommen klar was Du erreichen willst, ich habe mich nur dagegen gewehrt das angeblich garkein Eintrag in der zentralen DAtei vorhanden wäre und ich dann nicht wüßte woher OOo überhaupt die Angaben bezieht für die DEfault einstellung (bei Dir also: C:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user\basic)Stephan hat geschrieben:
[...] weil mir dann nicht erklärlich ist woher OOo die Angaben zum Speichern der Makros bezieht, denn irgendwo muß es diese ja speichen.
Die Makros werden ja gespeichert. Nämlich hier:
C:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user\basic\Standard\Module1.xba
Dort kann ich Änderungen die ich unter "MeineMakros" speichere wiederfinden. Ich möchte Sie aber auf E: und nicht auf C: Und eben das funktioniert für die anderen Einträge wie AutoCorr, AutoText, etc. problemlos - nur eben für Basic nicht.
Ansonsten kann ich nichts weiter zu LÖsung Deines Problems beitragen, da das was ich vorgeschlagen habe ja augenscheinlich nicht funktioniert und ich mehr derzeitig nicht weiß.
Ich habs schlicht aufgegeben mich mit diesen Problemen in der Breite zu befassen, weil es seitens OOo immer wieder (Detail-)Änderungen gibt und ich keine Lust habe mich ständig neu zu orientieren. Ursprünglich hatte ich ein Makro geschrieben was die Änderung beliebiger Pfade sehr bequem machte:
http://users.ooodev.org/~joesch/testdatei.html
aber pflege das nicht mehr, eben wegen ständiger Änderungen in OOo und des dadurch hohen Aufwands der Pflege.
Da du ja irgendeine Lösung brauchst würde ich zur LÖsungsfindung raten die Pfade mittels Makro auszulesen und dann mit XRAY zu schauen wie die Möglichkeiten des Schreibens bzw. des Änderns sind, denn auch dort gab es leider in Vergangenheit diverse Änderungen und meine Kenntnisse sind nicht mehr up-to-date.
Einen Code-SChnipsel der für die Pfade der Benutzerwörterbücher, in irgendeiner älteren OOo-Version mal funktioniert hat, schreibe ich hier mal dazu um das Prinzip des ZUgriffs auf die Pfade per Basic zu illustrieren:
Code: Alles auswählen
Sub Main
path=createunoservice("com.sun.star.util.PathSettings")
'Msgbox path.UserDictionary_writable
'Exit Sub
MyDialog=createunoservice("com.sun.star.ui.dialogs.FolderPicker")
MyDialog.setDescription("Wählen Sie den gewünschten neuen Pfad")
antwort = myDialog.execute
if antwort = 1 Then
'path.UserDictionary = Mydialog.directory
path.UserDictionary_writable = Mydialog.directory
Msgbox "Neuer Pfad " & ConvertFromURL(Mydialog.directory) & " wurde eingetragen."
End if
End Sub
Gruß
Stephan
-
- **
- Beiträge: 34
- Registriert: Fr, 06.11.2009 05:49
Re: Speicherpfad für Makros
Hallo Stephan.
Vielen Dank für die guten Tipps und deine geduldige Hilfe. Die Lösung mit den Makros ist mir in der Tat zu pflegebedürftig. Wie Du ja schon schreibst, wird der Aufwand irgendwann zu groß.
Ich hab mir jetzt zwei mögliche Workarounds überlegt, die vielleicht eine Chance haben, zukünftige Änderungen der OOo-Entwickler zu überstehen. Beide basieren auf einer Verschiebung des gesamten Userprofils nach E:
1. bootstrap.ini:
oder für mehrere User:
2. Hardlink
Könntest Du zu diesen beiden Ansätzen noch mal deine Meinung posten?! Bestimmt kannst Du aus deiner Erfahrung heraus besser beurteilen, ob das Aussicht auf Erfolg hat und wo möglicherweise Probleme entstehen.
Vielen Dank.
Peter
Vielen Dank für die guten Tipps und deine geduldige Hilfe. Die Lösung mit den Makros ist mir in der Tat zu pflegebedürftig. Wie Du ja schon schreibst, wird der Aufwand irgendwann zu groß.
Ich hab mir jetzt zwei mögliche Workarounds überlegt, die vielleicht eine Chance haben, zukünftige Änderungen der OOo-Entwickler zu überstehen. Beide basieren auf einer Verschiebung des gesamten Userprofils nach E:
1. bootstrap.ini:
Code: Alles auswählen
UserInstallation = E:/Users/Peter/AppData/Roaming/OpenOffice.org/3
Code: Alles auswählen
UserInstallation = E:/Users/$USERNAME/AppData/Roaming/OpenOffice.org/3
Code: Alles auswählen
mklink /D /H /J "C:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user" "E:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user"
Vielen Dank.
Peter
Re: Speicherpfad für Makros
die wenig belohnt wird ... BITTE denke doch selbst etwas mitund deine geduldige Hilfe
Ja, wahrscheinlich habe ich da geschrieben, aber doch etwas Anderes gemeint, was auch irgendwie zu erkennen sein sollte, in Kürze:Die Lösung mit den Makros ist mir in der Tat zu pflegebedürftig. Wie Du ja schon schreibst, wird der Aufwand irgendwann zu groß.
*ICH HABE KEINE ZEIT, abe will trotzdem helfen
*ich kenne nicht den genauen manuellen Eintrag der nötig ist
*vermutend das es wohl schneller geht diesen Eintrag per Makro herauszufinden statt im INternet hezielt danach zu suchen, empfahl ich das Makro - NICHT jedoch darum um Dir zu sagen Du solltest erwägen zukünftig die Einträge per Makro zu machen
Meine Hoffnung war das Du, da ich ja dden Ansatz nun bereits gepostet hatte (den Code) Du den Rest selbst herausfindest, WEKIL ICH KEINE ZEIT HABE!
Ich habs nun lieber selber gemacht damit wir irgendwann mal mit dem Thema fertig werden.
Unter Verwendung von:
Code: Alles auswählen
Sub Main
path=createunoservice("com.sun.star.util.PathSettings")
'Msgbox path.Basic_writable 'UserDictionary_writable
'Exit Sub
MyDialog=createunoservice("com.sun.star.ui.dialogs.FolderPicker")
MyDialog.setDescription("Wählen Sie den gewünschten neuen Pfad")
antwort = myDialog.execute
if antwort = 1 Then
'path.UserDictionary = Mydialog.directory
path.Basic_writable = Mydialog.directory
Msgbox "Neuer Pfad " & ConvertFromURL(Mydialog.directory) & " wurde eingetragen."
End if
End Sub
kam ich durch Nachschauen zum Eintrag von:
Code: Alles auswählen
<?xml version="1.0" encoding="UTF-8"?>
<oor:component-data xmlns:oor="http://openoffice.org/2001/registry" xmlns:xs="http://www.w3.org/2001/XMLSchema" oor:name="Paths" oor:package="org.openoffice.Office">
<node oor:name="Paths">
<node oor:name="Basic">
<prop oor:name="UserPaths" oor:type="oor:string-list">
<value/>
</prop>
<prop oor:name="WritePath" oor:type="xs:string">
<value>file:///D:/test_ooo_basic</value>
</prop>
</node>
</node>
</oor:component-data>
C:\Users\Peter\AppData\Roaming\OpenOffice.org\3\user\registry\data\org\openoffice\Office\Paths.xcu
was man somit als Vorlage für zukünftige händische Änderungen in der Konfigurationsdatei nehmen kann.
Dieser Eintrag zeigt bei mir (OOo 3.1.1, Windows XP) nach Beenden und Neustart von OOo auch sofort Wirkung, so wie gewünscht, allerdings hagelt es beim Starten Fehlermeldungen weil OOo nun bestimmte DAteien im neuen Pfad vermisst.
ES gilt nun die FEhlermeldungen sorgfältig zu lesen, die DAteien an den neuen Ort zu kopieren und die 2 Dateien
script.xlc und dialog.xlc (in der Wurzel des neu festgelegten Basic-Ordners) hinsichtlich der Pfadeinträge zu hirarchisch tieferliegenden Ordner vorhandener (bzw. wie gerade gesagt umkopierter Dateien/Ordner) zu ändern.
Das ist also reine Fleissarbeit.
Vielleicht schafft Du es nun das hinzukriegen und vielleicht wäre es dann nett wenn Du das ERgebnis im Wiki:
http://www.ooowiki.de/PfadeEinstellen?h ... %28pfad%29
einträgst
Tschuldigung, mein Tonfall soll wirklich nicht so unfreundlich klingen wie ersich anhört, nur den ganzen Thread habe ich versucht Anstösse zu geben, in der Hoffnung das Du dann selbst weiterforscht, und habe nun letztlich doch alles selbst gemacht/herausgefunden, und habe eigentlich keine ZEit...
also ich würde die Pfade 'normal' eintragen, wie es nun hoffentlich mit oben Gesagten möglich sein wird.Könntest Du zu diesen beiden Ansätzen noch mal deine Meinung posten?!
Sofern es immer noch nicht geht mußt Du halt nachfragen.
Gruß
Stephan