Alle 15:29, giovedì 9 agosto 2007, Guido (email.it) ha scritto:
[....]
> La macro che voglio pacchettizzare utilizza una immagine.
> LA attuale funzione di installazione della macro, prendeva l'immagine
> dal documento, la copia in una directory definita.
> La macro finale prendeva l'immagine dalla directory e la utilizza.
>
> Come posso fare una cosa simile se utilizzo il pacchetto?
> Ossia come installare anche l'immagine in una directory definita per
> poterla poi referenziare da Macro?
Ci sono due possibilità
La prima è quella che ho descritto dettagliatamente nel mio intervento alla
conference del 2005 a Koper. In pratica si tratta di questo:
- aggiungere alcune chiavi al registro di OOo creando un apposito schema di
registro (file xcs)
- creare un file di dati del registro che faccia riferimento a quelle chiavi.
Nelle chiavi sarà possibile immettere gli URL di immagini o altri file
arbitrari inclusi nel pacchetto, usando la variabile %origin% come radice dei
percorsi interni al package.
- attraverso le macro sarà possibile recuperare i dati dal registro e
ricostruire gli URL dei files inclusi nel package.
I miei package usano più o meno tutti questa tecnica.
Maggiori dettagli nella presentazione di ooocon 2005.
La seconda possibilità fa riferimento ad un servizio che è stato introdotto di
recente. Pur essendo più semplice da realizzare si tratta di una tecnica meno
versatile e potente della precedente:
-------------------------------
REM ***** BASIC *****
Sub Main
oCtx = GetDefaultContext()
oPkgManFactory = _
oCtx.getByName("/singletons/com.sun.star.deployment.thePackageManagerFactory")
oPkgMan = thePackageManagerFactory.getPackageManager("user")
oPkg = oPkgMan.getDeployedPackage("Library1.oxt", Null)
Print oPkg.URL
End Sub
-------------------------------
il URL che viene stampato rappresenta la directory dove il package è stato
scompattato durante l'installazione.
ciao
Paolo M
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]