Newsgroup: it.comp.appl.access
Titolo: File guida

Ciao a tutti.
Vorrei realizzare un file di guida (.hlp) per una mia applicazioncina
Access.
Ho fatto un paio di ricerche con google e sono arrivato a scaricare un
programmino che si chiama Microsoft Help Workshop. Leggendo un po' la
guida (pessima per un programma che dovrebbe realizzarle) sono riuscito
ad afferrare qualcosa, tipo che bisogna fare un rtf con i topic usando
codici strani da mettere come note, ecc. ecc.
Non sono riuscito a fare milioni di altre cose (cambiare i colori, le
font, creare un sommario, ecc.) ma magari con un altro po' di buona
volontà ci si riesce.
Cmq, non è che c'è qualcosa (documentazione) che facilita il compito?
Infine, ma poi è semplice associare la guida a pulsanti o fare in modo
che se uno preme F1 da una maschera parte la guida su un argomento
specifico? (Perché se non è così lascio stare tutto da adesso).
Thanx
giaconet

giaconet ha scritto:

e dove l'hai trovato? Adesso microsoft offre html microsoft help
che lavora con : file di testo, XML e HTML e genera i .chm
ha un help, forse, migliore
Gli stessi file sono gestiti da programmi di terze parti tipo
robohelp che hanno un IDE migliore
--
a.cara

 a.cara
Peccato che al solito la guida è solo in inglese e pure molto criptica per
chi non ha nesuna esperienza in merito.
Sapresti indicarmi un tutorial che spieghi come realizare guide in chm ed il
sito per scaricare RoboHelp (se freeware) ?
ciao omnitow

 ha scritto nel messaggio
news:amvsku$9tv6j$1...@ID-71483.news.dfncis.de...

Consigliandoti di imparare ad utilizzare Html Help Workshop che puoi
scaricare dal sito della microsoft, come consigliato da a.cara, ti riporto
un post illuminante di Toner da it.comp.lang.visual-basic:
ciao omnitow
======================
<Creare file *.hlp> by <Toner>
======================
Basi per la pianificazione e la creazione di un Help e la sua integrazione
con il programma Visual Basic.
Un file HLP e' costituito da una serie di pagine, ossia di Topics. Ognuna di
esse e' identificata in modo univoco all'interno del file da un nome,
inoltre presenta un titolo visibile all'utente (qualcosa di analogo alle
proprieta' Name e Caption). Opzionalmente una pagina puo' avere una serie di
parole chiave associate; implementando questa caratteristica, ricercando
nell'help una parola verra' mostrata la pagina relativa.
Un file di help generalmente si compone di un solo documento RTF, anche se
teoricamente se ne potrebbero usare di piu' per dividere una grande
quantita' di dati. Le istruzioni seguenti ammettono che si utilizzi un solo
documento RTF (che sarebbe la traccia da cui viene compilato l'HLP) e che lo
si scriva con Microsoft Word, ma con poche modifiche esse possono essere
applicate a qualunque editor RTF.
Il compilatore che trasforma il documento RTF in HLP accetta certe
convenzioni da parte del documento Rich Text Format. Ogni Topic e' separata
dalle altre mediante un Page Break, ma vengono considerati solo i break
inseriti manualmente: quelli automatici (in chiaro) vengono ignorati.
Per assegnare nome, titolo e keywords ad una pagina bisogna inserire prima
del primo carattere della pagina tre Footnotes, ma invece dei numeri bisogna
impostare tre codici convenzionati: # per il nome della pagina, $ per il
titolo e K per le parole chiave. Se ad esempio, si vuole chiamare una pagina
SOMMARIO, bisogna inserire la nota con il carattere #, quindi digitare la
parola SOMMARIO come corpo della Footnote. Per indicare piu' parole chiave
occorre separarle mediante un punto e virgola
Questa operazione, indispensabile per tutte le pagine dell'Help, puo' essere
automatizzata con una macro simile alla seguente (potete copiarla e
incollarla in Word come macro, poi magari assegnarla ad un pulsante custom
delle toolbar):
Sub MAIN
Begin Dialog UserDialog 190, 190, "Parametri"
TextBox 14, 29, 160, 18, .tname
TextBox 13, 67, 160, 18, .cname
Text 14, 52, 79, 13, "Page Title", .Text2
TextBox 14, 105, 160, 18, .kname
Text 14, 91, 73, 13, "Keywords", .Text3
Text 16, 14, 92, 13, "Topic Name", .Text1
OKButton 52, 148, 88, 21
End Dialog
Dim dlg As UserDialog
Dialog(dlg)
StartOfLine
InsertFootnote .Reference = "#", .NoteType = 0
Insert UCase$(dlg.tname)
OtherPane
CharLeft 1
InsertFootnote .Reference = "$", .NoteType = 0
Insert dlg.cname
OtherPane
CharLeft 1
InsertFootnote .Reference = "K", .NoteType = 0
Insert dlg.kname
OtherPane
End Sub
Una convenzione molto utile e' di mantenere semre i nomi delle Topic in
maiuscolo.
Una volta definite le proprieta' di ogni pagina, come impostare i
collegamenti?
I "salti" tra le pagine sono di due tipi: popup e links. Quando si fa click
su di una parola sottolineata a puntini compare una finestra di popup con
un'altra pagina, ma dopo si ritorna subito alla precedente. Quando la
sottolineatura e' piena, il link porta direttamente alla nuova pagina. I
codici per queste due operazioni sono la sottolineatura semplice (per i
popup links) e quella doppia (per i links "veri"). Siccome questa ultima
formattazione e' la piu' usata ma non compare in Word, e' consigliabile di
creare un apposito pulsante associato a questo comando. Per indicare la
pagina di destinazione del link, comunque esso sia, occorre far seguire alla
parola sottolineata il nome della Topic, IN CARATTERI NASCOSTI. Sono quei
caratteri che Word non vi fa vedere a meno che non attiviate quel pulsante
con la P rovesciata. Esso mostra i caratteri di ritorno a capo, i Tab, gli
spazi, e tutto il testo NASCOSTO del documento. Per creare gli Help si
lavora quasi sempre con i caratteri nascosti attivi.
Ad esempio, per creare un link "vero" ad una pagina chiamata SOMMARIO
(quindi con una Footnote # con scritto SOMMARIO) contrassegnato dalla frase
Vai al Sommario, occorre formattare questa frase con doppia sottolineatura,
e SUBITO DOPO scrivere SOMMARIO, quindi impostare questa parola in Hidden
(nascosto).
Siccome il pulsante di formattazione Nascosto non e' disponibile in Word, e'
utile aggiungerlo alla Toolbar perche' creando gli Help se ne fa largo uso.
Un'altra macro molto utile e' lo SmartLink: selezionando una parola e
premendo il pulsante associato viene richiesto il nome della pagina
destinazione: il resto e' automatico. In questo modo non c'e' neanche
bisogno di vedere i fastidiosi caratteri nascosti. Ecco il codice della
macro:
Sub MAIN
Begin Dialog UserDialog 330, 76, "Microsoft Word"
TextBox 13, 25, 300, 18, .tname
Text 102, 6, 111, 13, "Target del link", .Text1
OKButton 112, 46, 88, 21
End Dialog
Dim dlg As UserDialog
Dialog dlg
DoubleUnderline
CharRight 1
Hidden
Insert UCase$(dlg.tname)
Hidden
DoubleUnderline
End Sub
A questo punto, la struttura dell'Help e' completa: un documento RTF (a
proposito, bisogna salvare in questo formato e non come DOC !) con tante
Topic, una per pagina, ognuna identificata da Nome, Titolo e Keywords, e con
numerosi link, popup e non. I link sono seguiti dal nome della destinazione
in caratteri nascosti.
Per includere bitmaps nell'help, si puo' procedere per riferimento o per
incorporamento. Il secondo metodo, seppure occupi un po' piu' spazio, e' il
piu' semplice e veloce. Si inserisce l'immagine come si farebbe per un
documento normale ed essa viene inclusa nel file Help.
Nota importante: gli apici e i doppi apici vengono automaticamente
sostituiti da Word con quelli speciali, di apertura e chiusura. Questi
ultimi non fanno parte del set di caratteri riconosciuti da HC, quindi
vengono ignorati nella creazione dell'HLP. E' necessario disattivare la
sostituzione automatica degli apici e delle virgolette durante la creazione
del file RTF.
Una volta stilato il documento RTF, occorre includerlo in un file HPJ - che
sarebbe un file Ascii che definisce le caratteristiche dell'Help e contiene
riefrimenti ai files RTF inclusi in esso - di norma uno solo.
Per creare un file HPJ si puo' usare un qualunque editor di testo, come
Notepad.
Il file HPJ e' diviso in sezioni, cho come per i files INI sono indicate tra
parentesi quadre. Ogni sezione contiene le informazioni da passare al
compilatore di Help, /hc/hc.exe. Alcune di queste sezioni sono secondarie;
qui vengono descritte le piu' importanti e quelle obbligatorie.
[OPTIONS]: contiene le voci ROOT, CONTENTS, TITLE e WARNING. Root indica la
directory in cui si trovano i files RTF contenenti le pagine, e gli
eventuali files aggiuntivi (bitmaps inseriti per riferimento, ...). Contents
specifica il Topic Name (quello che aveva la Footnote segnata con #) della
pagina introduttiva, quella che viene visualizzata all'apertura dell'help.
Title indica il titolo della finestra di Help, mentre Warning specifica la
gravita' di errori da segnalare durante la compilazione. E' sempre bene
impostarlo a 3, il valore massimo.
[FILES]: indica i files RTF da compilare nel file HLP risultante. In questa
sezione occorre scrivere i nomi (senza percorso) di tutti i files RTF che si
vuole includere. Essi devono trvarsi nella directory specificata in ROOT.
[MAP]: e' una sezione molto importante in quanto permette di indicare un
ContextID per ogni pagina, in modo da richiamare dalla propria applicazione
VB una specifica pagina dell'help conoscendone tale ID. In questa sezione
ogni riga e' costituita da un nome di Topic - come indicato con la Footnote
#, seguita da un numero univoco. E' consigliato posizionare tutti i numeri
alla stessa colonna e scriverli tutti con lo stesso cumero di cifre, se
necessario facendoli precedere da zeri.
[WINDOWS]: servirebbe a definire finestre secondarie dell'Help, ma questa e'
una opzione avanzata. Puo' essere invece utile per configurare la finestra
principale dell'Help, cioe' Main. Inserire una riga come la seguente:
main = "Guida di XXXX", (300,200,600,500)
serve ad impostare titolo, posizione e dimensioni della finestra nello
schermo.
Ecco un esempio completo di file HPJ:
[OPTIONS]
ROOT = c:\helpfiles\
CONTENTS = SOMMARIO
TITLE = Guida di XXXX
WARNING = 3
[FILES]
file_hlp.rtf
[MAP]
SOMMARIO 001
ABOUT 111
MENUS 112
COMANDI 113
INSTALLAZIONE 201
DISINSTALLAZIONE 202
[WINDOWS]
main = "Guida di XXXX", (300,200,600,500)
Compilazione: per creare il file HLP occorre apirire una finestra DOS,
andare nella sottodirectory /Hc di vb e digitare:
HC c:\esempio\miohelp.hpj
dove ovviamente la directory e il nome del file hpj sono variabili. Se tutto
va bene dopo un po' di puntini il file HLP verra' creato nella directory di
HC. Di qui bisogna spostare il file nella directory del programma.
NOTA IMPORTANTE per Windows NT: Se il lavoro di compilazione viene
effettuato sotto Windows NT (quindi su un NTFS), occorre andare nella
directory di HC usando i filenames corti, ad esempio invece di cd "visual
basic" digitare cd visual~1.
In caso contrario potrebbe verificarsi un malinteso con NT, che scambia
HC.exe con un suo comando OS2 e ne mostra la schermata di help.
Ora bisogna collegare l'Help alla propria applicazione VB. Un modo consiste
nello specificare a VB un ContextID per ogni elemento, indicare un file HLP
per l'intero progetto e automaticamente la pressione di F1 aprira' l'help.
Per avere un controllo maggiore su di esso pero' e' conveniente usare le
API.
L'handle  (proprieta' hWnd) serve a stabilire un collegamento tra l'Help e
la finestra chiamante, in modo da poterlo facilmente chiudere quando non
serve piu' o quando l'applicazione finisce, anche dal codice. Questa
chiusura viene effettuata mediante la funzione HelpQuit, che accetta un
handle di finestra come parametro e chiude tutti gli help chiamati da essa.
Una tecnica vantaggiosa e' quella di: impostare per tutti i form la
proprieta' KeyPreview su True, quindi scrivere:
Sub Form1_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = vbKeyF1 Then
HelpMe 18, Me.hWnd, "c:\helps\miohelp.hlp"
End If
End Sub
In questo modo ad un form e' associata una pagina. Per integrare ancora di
piu' l'help nell'applicazione si potrebbe concatenare una serie di If
ActiveControl Is nomecontrollo Then ... ElseIf ..., per differenziare la
pagina richiamata in risposta al controllo attivo nel form.
Ovviamente rimarra' anche una voce di Help che mostrara' il sommario. Basta
chiamare HelpMe con il context ID della pagina di sommario per ottenere
questo risultato.
Informazioni prelevate dalla rete


wrote:
Omni sei un pozzo di scienza , grazie .
Sai dove posso trovare qlc sui file *.chm : a questo punto il minimo č
sfruttarti :-)
Ciao. Fabrizio

 sito per scaricare RoboHelp (se freeware) ?
Non credo che RoboHelp sia Freeware. Il sito non me lo ricordo
(cmq. 30sec netti, googlando)
Personalmente ne uso un'altro si chiama "Notepad" con l'aiuto di "Word"
(o anche "Word" da solo) + il compilatore .chm dell' "html microsoft
help"
Per il tutorial non so proprio aiutarti.
--
a.cara

"Fabrizio" <fabrizio...@SPAMtiscalinet.it> ha scritto nel messaggio
news:m928pukfindta0fpk...@4ax.com...

Si... sempre troppo gentile, cosě rischi davvero di farmi arrossire... a sto
punto il minimo č chiederti il numero della tua carta di credito ;-)
ciao omnitow
PS: piuttosto contraccambiare all'intero NG

punto il minimo è chiederti il numero della tua carta di credito ;-)
Ahimè caschi male : con me lo devi fare per amore :-))
Ciao. Fabrizio

 Ciao. Fabrizio
Devo riconoscere che sebbene io di cazzate ne spari a profusione, tu riesci
sempre a sbalordirmi, č veramente difficile seguirti...
ma tu hai la tua cara AMANDA... dai che ti vuole cosě bene, povera...non
tradirla


certo però dovrebbero aprire una nuova NG del tipo it.arti.cazzate,
chissà... :-)))
ciao omnitow

[CUTTONE]
Wow! Cercherò di imparare ad creare i chm ma questo post è proprio
quello che cercavo, grazie!
Bye
giaconet


wrote:

it.arti.cazzate? non capisco "arti" , ma so che me lo spiegherai tu .
;-)
Ciao. Fabrizio

tradirla
Hai frainteso , porcellone , cmq io sono libera (" ma tu Amanda sei
tutta scema , ricordati di chi è il corpo che abiti , quelle "cose"
fattele nel "tuo" inconscio , pervertita" ... stronzo e pure con la
panza , che non sei altro : ecco! ...  " sta parlando con me Omni non
ci fare caso" )
Ciao. Fabrizio

 Ciao. Fabrizio


wrote:

Venale come al solito , non ti voglio più bene , bruto ( Brava Amanda
.... fiù pericolo passato )
Ciao. Fabrizio

 Ciao. Fabrizio
bravo... vedi che alla fine ci sei arrivato da solo al significato di
"arti"? ;-)
buona Amanda lo so che è difficile... ma stai calma... non mi
fraintendere, non sono un TROLL, non mi metteri mai tra Amanda e la tua
panza... eheh suona anche bene... è si bisognerebbe propio fare domanda al
GCN per sto nuovo NG...
Ciao omnitow

Ciao omnitow
Hey Hey ragazzi ma questo è tutto matto , adesso si inventa altre
personalità ... ma dico : fra tutti i nomi che esistono a sto' mondo
proprio Amanda ? sei proprio fuso, squinternato , pazzo , loco nella
cabeza ... ( Non ci cascano Fabri , rassegnati )
Vabbè basta per oggi , ho fatto lo stupido abbastanza.
Ciao. Fabrizio

 ha scritto nel messaggio
news:an1b9g$g0d$1...@fe2.cs.interbusiness.it...

Scusate se mi intrometto, ma mi sono sentita un po' presa in considerazione
:-) , che cosa significa TROLL?


TROLL = Persona che, all'interno di un NG, ha come unico scopo creare
disturbo e scompiglio... in soldoni non trova una soluzione al tuo problema
ma sfotte e basta
Ciao omnitow
PS: per Fabri... adesso che realizzi non sfottermi perchè gli ho spiegato
cosa significa :-)))

 Ciao. Fabrizio
ciao omnitow

:-) , che cosa significa TROLL?
Clic destro del mouse
Omnitow:
host170-9.pool80104.interbusiness.it
F. Amanda:
 
host170-9.pool80104.interbusiness.it
NON MI PIACE!!!! 
Speriamo che nessuno pensi che sia veramente io F. Amanda: non amo
nascondermi dietro dei nick o delle e-mail inventate , e non credo
affatto di essere un troll , come hai scherzosamente detto :  sai bene
anche tu che posso aiutare solo chi è al mio livello ( pochi ) è l'ho
anche fatto alle volte e con profitto ; cmq spesso mi prendo la briga
di provare e testare codice e dirvi cosa ne penso e dove ho
riscontrato degli errori : mi risulta che c'è gente che si fa pagare
per questo. 
Mi piace scherzare , nei limiti della correttezza però : ti pregherei
di non fare più una cosa simile, se devi giocare fallo a viso aperto.
Ciao. Fabrizio

cabeza
NON MI PIACE NEMMENO A ME!
Anche a me piace scherzare e anche leggere qualche post ironico, ma i tuoi
limiti a mio parere spesso superano di gran lunga quelli della correttezza,
ti pregheri di moderare i termini, e soprattutto il tono, è sufficiente un
minimo di rispetto, capisco perdere la pazienza ma inserirsi in un 3D solo
per sfottere gratuitamente il primo che ti capita tra le mani, non propio
scherzosamente direi (perlomeno per l'interessato), solo perchè non è al tuo
LIVELLO mi sembra poco garbato. Se non si vuole dare nessun aiuto c'è anche
la possibilità di ignorare il 3D.
Ciao omnitow

...
.
Ciao. Fabrizio

 vali la pena.
...
Eheh! E poi dici a me "boni, state boni" mentre cerco di corteggiare Alessia???
Ciao. Claudio.

Fabrizio wrote:
[cut]
premessa: in un altro NG c'e' stato un periodo che mi anno (senza h)
   soprannominato "grillo parlante"
1) Dopo un po' mi sono stancato di seguire questo 3d, quindi sono all'
   oscuro di alcune cose.
2) Non sono contrario agli OT
3) Se non mi sbaglio hai avuto un piccolo "scazzo" con Debora Maniero
   perche' ritenevi i suoi post "inconcludenti"
4) Mi sembra che fai un po' di dietrologia
5) Il gioco e lo scherzo non dovrebbero essere da un lato solo
6) Le sperimentazioni dovrebbero essere "scientifiche" e sinceramente
   alcune volte le tue sperimentazioni sfiorano la "farneticazione"
   (bada bene senza alcun giudizio "morale")
7) Non capisco bene come certi 3d possano sfociare nel combattimento
   fra galli (gia' da me precedentemente citato)
8) Ricitando Heinlein cmq "Anyone is entitled to elect time and
   fashion of his own destruction"
9) Ti chiedo la cortesia di "chiudere" 
10) Saluti a te ed Amanda
--
a.cara

 E' la seconda volta che mi scontro con te, è sempre perchè sei
<cut fermiamoci qua non vorrei duplicare l'indice> ( 1 A 1 !!! )
Ciao omnitow
PS il contatore che ho inserito procederà ad ogni successivo termine volgare

10) Saluti a te ed Amanda
Chiudo e ricambio
Ciao. Fabrizio


Con Omni non c'ho provato : cmq so che č libero.
Ciao. Fabrizio

PS il contatore che ho inserito procederà ad ogni successivo termine volgare
OK , non ci piaciamo. D'ora in poi ti darò meno fastidio possibile ,
spero di essere contraccambiato: a quanto eri arrivato ? ecco
aggiungi.
Passo e chiudo.
Ciao. Fabrizio

 Ciao. Fabrizio
Passo e chiudo
Ciao omnitow

    fra galli (gia' da me precedentemente citato)
Sono d'accordissimo: è una cosa scandalosa!!!
Antonio