HTML-Hilfe in VisualStudio 2015 einbinden

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von mozartw.

    HTML-Hilfe in VisualStudio 2015 einbinden

    Hallo liebe Helferlein,

    Stand:
    Die HTML-Hilfe ist mittels HelpNDoc erstellt und funktioniert.
    Ein Testmodul (Form1 / "Hilfedatei_Test) ist angelegt.
    HelpNDoc erzeugt auch eine Enum - Datei (LW_Stammdatenverwaltung), die ich übernommen habe.

    Hier der Code (bin mir nicht sicher ob das so optimal ist)
    Funktioniert, nach dem ich den Ordner "Hilfe" mit allen Dateien nach ".... bin\debug" kopiert hatte.

    Der Code ist nur ein Test für eine mögliche Lösung.

    '---------------------------------------------------------
    ​Public Class Form1

    Public Help_Name As String
    Public H_Nummer As Integer
    Dim sTopicFile As String

    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

    End Sub

    Public Enum LW_Stammdatenverwaltung
    Einfuhrung = 0
    Willkommen = 1
    Konventionen = 16
    IneigenerSache = 11
    ErsteSchritte = 3
    Systemanforderungen = 4
    Verzeichnisstrukturenoderwofinde = 2
    Hauptmenu = 6
    Ubersicht = 7
    Hauptmodule = 8
    StammdatenderLCL = 29
    Untermodule1 = 33
    PayRollimportieren = 34
    Reports = 35
    QuartalsreportBuchungsbelegfurPe = 36
    QuartalsreportLCLBuchhaltung = 37
    Sonstiges = 24
    Optionen = 40
    StammdatenderLH1 = 15
    ReinigungfurWEeingeben = 23
    Arbeitsauftrage = 27
    sozialeDienste = 22
    Stromverbrauch = 26
    Untermodule = 30
    LHInternetZugangedefinieren = 31
    Nebenkostenverwalten = 32
    Reinigungskostenverwalten = 21
    Reports1 = 38
    QuartalsreportBuchungsbelegefurL = 25
    HouseTaxEinzelrechnungenundBuchu = 9
    Sonstiges1 = 41
    Migrationsuchen = 39
    StromdatenvonLCLundLHG = 10
    Stromzahlerlistenerzeugen = 28
    Stromzahlerlisten_importieren = 13
    Sonstiges2 = 42
    Reports2 = 43
    StromeinzelrechnungenundBuchungs = 14
    OpenSourceCode = 17
    Hauptmenu1 = 18
    LH_Stammdaten = 19
    NKVerwaltung = 20
    End Enum

    'beim Drücken der Funktionstaste F1 immer die Willkommen-Seite angezeigen
    Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
    ' F1 - Hilfe
    If e.KeyCode = Keys.F1 Then
    H_Nummer = 3
    Call Modul_Hilfe(H_Nummer)
    End If
    End Sub

    'beim Drücken des Controls 1. Seite angezeigen
    Private Sub mnuHelp_Click(sender As Object, e As EventArgs) Handles mnuHelp.Click
    H_Nummer = 1
    Call Modul_Hilfe(H_Nummer)
    End Sub

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    H_Nummer = 33
    Call Modul_Hilfe(H_Nummer)
    End Sub

    Sub Modul_Hilfe(HN)
    sTopicFile = [LW_Stammdatenverwaltung].GetName(GetType(LW_Stammdatenverwaltung), HN)
    sTopicFile = sTopicFile & ".html"
    MsgBox(sTopicFile)

    Dim path As String = Application.StartupPath & "\Hilfe\" & sTopicFile
    TextBox1.Text = path
    Process.Start(path)
    End Sub

    End Class
    '--------------------------------------------

    Nun das Problem:
    Nach dem Veröffentlichen findet er die Die Hilfedateien nicht.
    Mit dem Trick den Hilfeordner in den Pfad der Exe -Datei zu kopieren läuft das Ganze dann.
    Aber das kann es ja nicht sein.
    Eigentlich wollte ich den ganzen Ordner "Hilfe" mittels "vorhandener Resourcen" einbinden - geht aber nicht, weil nur Dateien
    und keine Ordner angenommen werden.

    Hier meine Bitte/Fragen:
    - Ist der Code so richtig, was kann man optimieren
    - wie bekomme ich den Ordner "Hilfe" eingebunden
    damit es in der compilierten Exe auch läuft

    Danke für eure Hilfe
    Mozart
    Bitte setze um deinen Kompletten Code-Block die VB.NET-Tags und einen Spoiler!!
    Lässt sich besser lesen und man muss nicht die halbe Seite durchscrollen um zu erfahren was du möchtest.


    Wenn du dein Programm debuggst, werden die PROGRAMM-Dateien unter bin/debug abgelegt..
    Wenn du da hinein deine help-Files kopierst, mag das klar funktionieren.. den Build zum veröffentlichen interessiert es doch aber gar nicht, was alles im debug-Ordner dazu gekommen ist..
    und dann knallt es logischerweise hier:

    VB.NET-Quellcode

    1. Dim path As String = Application.StartupPath & "\Hilfe\" & sTopicFile

    da er unter \Hilfe\ nichts findet im neuen Verzeichnis.

    Also entweder musst du das so machen wie bisher und den Ordner extra reinkopieren oder schaust mal im Netz, ob dir sowas evtl. hilft.

    LG, Acr0most
    Wenn das Leben wirklich nur aus Nullen und Einsen besteht, dann laufen sicherlich genügen Nullen frei herum. :D
    Signature-Move 8o
    kein Problem mit privaten Konversationen zu Thema XY :thumbup: