Newsgroup: it.comp.lang.visual-basic
Titolo: Accesso alla rubrica di Mozilla (Firefox)

Ciao a tutti,
vorrei poter accedere alla rubrica di Mozilla da un programma (VB6 in 
questo caso), ma in rete non ho trovato ancora nulla, neanche un 
"accenno"...
Il problema e' che Mozilla per il suo "abook.mab" usa un formato di file 
del cavolo, che sembra un po' XML ma non lo e': il formato pare sia 
"mork", creato da tal "David McCusker" che doveva IMHO avere qualche 
problema mentale quando ha creato quel formato...;-))
Lasciando stare la domanda del perche' sia stato usato un formato cosi' 
astruso invece del normale XML, qualcuno sa aiutarmi?
A me non interessa gestire la rubrica, mi basta poter leggere gli 
indirizzi email (anzi, mi basta, dato un indirizzo email, verificare 
semplicemente se esiste in rubrica), l'ideale sarebbe poter trovare uno 
spezzone di codice per leggere le informazioni dal file "abook.mab", 
anche sequenzialmente mi va bene tutto!
Qualche idea? Sul sito 
www.mozilla.org
 non ho trovato nulla...:-(
-- 
Ciao!
    -DocDoc-
--- Per scrivermi: docdoc()
sertel.net
Sei anche tu stanco dei messaggi spam? Usa Terminator, il programma
anti-spam italiano FREEWARE!     
http://www.spamterminator.it/

 Qualche idea? Sul sito 
www.mozilla.org
 non ho trovato nulla...:-(
Hai visto questi?
http://www.mozilla.org/mailnews/arch/mork/primer.txt
http://www.mozilla.org/mailnews/arch/mork/grammar.txt
che si trovano qui:
http://www.mozilla.org/mailnews/arch/
ciao
	maxx
-- 
NOSPAM: Rimuovere i trattini dallo username!
Cut hyphens from my username!

 
http://www.mozilla.org/mailnews/arch/mork/grammar.txt
Innanzitutto grazie per la risposta.
Si, li conoscevo gia', ma faccio anche io una domanda a te: ma li hai 
letti? :-) Soprattutto, se hai provato a vedere il contenuto di 
"abook.mab" e confrontarlo con quei documenti, sara' venuto anche a te 
il mal di testa...;-))
Il formato e' veramente incasinato (per usare un eufemismo) e 
l'"abook.mab" ha la struttura del formato mork in versione piu' 
complessa e meno leggibile (con row definition per mappare gli id in 
esadecimale dei vari campi...) ma soprattutto pare che, a parte uno 
spezzone di codice Perl (
http://www.jwz.org/hacks/mork.pl
) per leggere 
un altro file con lo stesso formato, non ci siano in giro sorgenti, 
funzioni, librerie o qualsiasi altra cosa riutilizzabile per accedere 
decentemente all'"abook.mab" senza doverci passare meno di 15 giorni 
sopra a studiare come funziona...:-(
La cosa per me piu' inspiegabile e' per quale ragione i programmatori di 
Mozilla hanno deciso di utilizzare questo formato del cavolo, invece di 
qualcosa di piu' standard tipo XML (a me resta del tutto inspiegabile 
anche il fatto che ogni produttore di un mail reader debba inventarsi 
una propria rubrica invece di usare le API WAB ossia la rubrica di 
Windows....).
Io penso che per il mio scopo (determinare se un certo indirizzo email 
e' contenuto nella rubrica) mi possa limitare a cercare nel file 
"abook.mab" una stringa composta dal carattere "=" seguito dalla email e 
dal carattere ")", es. "=
mio...@provider.it
)", dovrebbe bastare...
Se non avete idee migliori, mi sa che dovro' accontentarmi di questa 
rozzissima soluzione...:-(


Un'altra domanda, sempre sulle rubriche: il discorso che ho fatto per la 
rubrica di Mozilla mi servirebbe anche per altri email client (Pegasus, 
Eudora, Incredimail, eccetera)..
In pratica se qualcuno ha informazioni su come accedere alla rubrica di 
un qualsiasi client di posta (quanto meno per determinare se un dato 
indirizzo email e' presente o meno, mi basta solo avere un esito 
positivo o negativo) potrebbe postare qui le informazioni, link, o altro?
Vi ringrazio molto anticipatamente...;-)


 Eudora, Incredimail, eccetera)..
Per me non ne esci :)
Comunque prova a dare un occhio qui 
http://www.wotsit.org/
.
C'č poco ma qualcosina c'č.
Ovviamente niente per Mozilla :) (ma magari non ho cercato bene io)
Ciao
-- 
NeoDataType : 
http://www.neodatatype.net
Sito Comune : 
http://www.it-lang-vb.net


Studiare una marea di sorgenti in C++ (ho anche gia' trovato una serie 
di file *.h per C++ per la gestione dei file mork) per poi cercare di 
capire il meccanismo e farne un porting verso Visual Basic, e' una cosa 
che puo' valere la pena se qualcuno te la paga..;-)
Della serie: grazie per l'idea, ma il gioco non vale la candela.:-)


 ancora lo scrivesse per te.
dai messaggi di docdoc, non sembrava proprio. cercare ha cercato, e provava
a non rifare lavoro gia' fatto, e potenzialmente utile, quindi probabilmente
gia' svolto.
quanto ai sorgenti del browser, a parte che docdoc poneva un prob anche piu'
generale sui vari mailers, se ti danno quelli di oe credi ti serva molto ?
wotsit sono anni che ha cose sui dbx in c, o accennate. ma stiamo tutti
ancora su dbxtract, mi sa.
j.

 ancora lo scrivesse per te.
Cercava aiuto, e spulciare sorgenti complessi come quelli di firefox, in un
linguaggio non ben conosciuto è semplicemente un'idea balzana.
A questo punto farebbe decisamente prima a studiarsi mork e implementarsi un
parser per conto suo.


 accennate. ma stiamo tutti ancora su dbxtract, mi sa.
Ma DBX Manager non me l'avevi segnalato tu ? :-)
451 K sul Sito Comune o te lo mando io, uno zip di 900 K con una
applicazione di esempio.
Ora come ora non ricordo da dove viene, però ci sono i sorgenti :-)
Bye, G.

 ancora lo scrivesse per te.
Che fai, mi freghi il posto ? :-P
Di solito sono io a fare ca##iatoni ai "culipesanti" :-)
Nel caso specifico, DocDoc non appartiene alla categoria, fidati:
da quel che ho visto (qui e altrove) è uno che smazza di brutto.
In questo caso, semplicemente, ha trovato un problema decisamente
rognoso, e siccome AFAIK lo affronta per un programma gratuito...
vedi tu.
Bye, G.

 qualche problema mentale quando ha creato quel formato...;-))
Dovrebbe poterla esportare in TAB e CSV, AFAIR.
La butto là: magari c'è una maniera di automatizzare l'esportazione ?
...script ?
Bye, G.

 Ora come ora non ricordo da dove viene, però ci sono i sorgenti :-)
manda, manda. fra l'altro e' defunto il disco sui cui stava una 10ina di gb
di ftp vario (risolvendomi con minimo mio impegno l'ormai annoso problema di
fare un po' d'ordine :)
ma che dbxtract alla 4.40+ continui a fare dei gran casini (estrazioni
doppie, dimenticanze, messaggi fantasma, nsubject a zero-length, ecc.) mi fa
sempre pensare che non debba essere proprio immediato, almeno non per me.
ciao, a.


Bingo...;-)



Ti prego, risparmiati queste battute. Chi mi conosce sa che "macino" 
parecchio codice, e' che mi sono scontrato con "mork" (e "mindy" dove 
sara'?;-)) che e' il peggior formato pseudo-testuale che abbia mai visto 
per una base dati (tra l'altro relativamente semplice come un 
indirizzario....)., e perderci giorni e giorni solo per cercare di 
capire come funzione e poi farne una libreria non mi pare il caso, 
tantomeno per un progetto gratuito.
Soprattutto se si considera il fatto che mi basta solamente una funzione 
che, dato un indirizzo email, mi restituisce semplicemente un booleano 
per dirmi se l'indirizzo e' presente nella rubrica di Mozilla o meno.
Capito ora?



No,  troppo lento, io devo poter consultare la rubrica al volo varie 
volte al secondo...



Mah, alla fine penso che la soluzione piu' semplice e' quella che mi 
tenevo "di riserva", ossia cercare in modo puramente testuale 
l'indirizzo, con "=" prima e ")" dopo. E' l'unica soluzione che sembra 
sufficientemente affidabile e soprattutto molto rapida.
Ora spero di trovare informazioni anche per le altre rubriche: secondo 
voi quali sono i mail reader piu' diffusi, a parte Outlook Express e 
Mozilla?
Ah, gia', poi c'e' anche Outlook, un'altra "bestia", anche lui con 
l'ennesima, diversa, rubrica...:-(


 volte al secondo...
Nonononononono !
Lo devi fare solo una volta all'avvio (o al limite ogni volta che scarichi
la posta), leggi tutti gli indirizzi dal file gli indirizzi e te li metti in un array,
poi le ricerche le fai in memoria.
Non ha senso farlo leggendo il file su disco ogni volta per ogni indirizzo,
se puoi evitarlo.
Una domanda: hai provato a chiedere direttamente agli sviluppatori
se c'è un modo per accedere a quei dati ?
Che so, magari c'è una dll che esporta una funzione utilizzabile...
Avranno un forum, una ML, un NG, un indirizzo a cui rivolgersi, no ?
Bye, G.

 manda, manda.
Ok.
Bye, G.

 se puoi evitarlo.
non so mozilla. oe, se l'opzione e' attiva, aggiunge un indirizzo a ogni
reply.
ciao, a.

 a ogni reply.
Ci avevo pensato giusto mentre scrivevo; proprio per questo ho
aggiunto al volo quella roba tra parentesi :-)
Per quel che ho capito, DocDoc sta tentando di integrare nel suo
programma antispam una funzione che faccia direttamente passare
una mail se l'indirizzo del mittente è presente nella rubrica.
<disquisizione teorica AKA p###a mentale>
    Quanto al fatto che con alcuni (tanti) virus di oggi fare questo sia
    sbagliato, è un altro discorso; prendi l'ultimo Bagle, per esempio.
    E d'altra parte il discorso virus e quello spam sono diversi, per
    quanto parzialmente sovrapponibili.
</disquisizione teorica AKA p###a mentale>
Bye, G.

 Windows....).
Sono d'accordo sul fatto che non ci sia la necessità di inventarsi ogni 
volta un nuovo formato, ma usare l'API WAB non è certo una buona idea
per un prodotto che (come Mozilla) vuole essere (ed è) portabile su più
SO.
Ciao.
-- 
BSD is for UNIX lovers -- linux is for Windows haters.

 SO.
Si, lo so, ma in linea di massima non mi sembra difficile creare uno 
strato software (es. una serie di funzioni o un oggetto, dipende dal 
linguaggio) che e' unico per tutte le piattaforme ma che al suo interno 
pensa a "tradurre" le direttive nelle equivalenti API... Per dire, se 
faccio una funzione "CercaIndirizzo(Nome)" per cercare l'email di un 
certo nome,  poi all'interno della funzione se sono sotto Windows usero' 
WAB, se sono su altri sistemi operativi usero' altro....
In ogni caso non mi sembra che la gestione di file "mork" sia cosi' 
portabile...;-)


 portabile...;-)
le rubriche mi sembra la storia delle spine elettriche. oggi facendo ordine
nei vari cablaggi ne guardavo desolato un paio, direi una inglese una
americana. tedesche, italiane... ce ne saranno altri tipi. sconfortante. e
poi qualcuno spera che ci si metta d'accordo sulle emissioni. chi rinuncia
al suo modello ?
una rubrica e' una cosa molto stupida, e si potrebbero tranquillamente
accordare per un formato standard non legato a piattaforme. tanto, se uno
vuole giocherellare con la tua rubrica, se e' sveglio e maligno lo fara'.
ciao, j.

 portabile...;-)
Non so, in verità non l'ho neppure guardato, cos'ha di non portabile?
