Dunque, di un programmino ho tre Help in formato .chm, ognuno posto nella relativa sottocartella:
\en\PsHwHlp_en
\it\PsHwHlp_it
\fr\PsHwHlp_fr
Tre voci di menu diverse aprono (mi correggo, DOVREBBERO APRIRE) i tre files diversi.
La cosa inspiegabile è questa: alla prima apertura del programma, qualunque delle tre voci io clicchi...si apre correttamente il relativo help.codice:Private Sub PrimoToolStripMenuItem_Click(sender As System.Object, e As System.EventArgs) Handles PrimoToolStripMenuItem.Click Flag = "en" Flag = Application.StartupPath & "\" & Flag & "\PsHwHlp_" & Flag & ".chm" Debug.Print(Flag) Help.ShowHelp(Me, Flag, HelpNavigator.Topic, "intro.html") Flag = Nothing End Sub ... ed altre due uguali, cambio solo la prima definizione di Flag
Poi se chiudo l' Help e clicco su un altra voce di menu per leggere un altro help.... si apre sempre e soltanto il primo Help lanciato dopo l' apertura del programma!
Ovviamente Debug.Print(Flag) visualizza l' indirizzo CORRETTO dell' help che voglio aprire, ma si apre COMUNQUE l' altro, cioè il primo che è stato aperto!
cioè, se anche il Debug.Print mi dà:
E:\visual studio 2010\Projects\MyProg\MyProg\bin\Debug\it\PsHwHlp_i t.chm
se il primo Help che ho aperto è quello in francese... si riapre quello in francese!!!
E' come se ci fosse qualcosa che devo disporre, ma non esiste un Help.Dispose()....
![]()

Rispondi quotando