Hallo, ich habe mit Visual Studio eine Windows Forms Anwendung erstellt und möchte nun, dass wenn man auf eine Schaltfläche klickt, sich eine Bedienungsanleitung öffnet. Nun könnte ich ja einfach die Datei öffnen lassen. Jedoch könnte der Anwender sie dann beliebig verändern, weil ja nur ein vorhandenes Worddokument geöffnet wird. Ist es möglich den Text der Worddatei in einem Fenster anzuzeigen, sodass daran nichts geändert werden kann? Ich muss jedoch vorab sagen, dass ich nicht die größten Programmierkenntnisse habe, also hoffe ich einfach mal dass es da eine möglichst einfache Lösung gibt :) MfG Andreas
Andreas L. schrieb: > Jedoch könnte der > Anwender sie dann beliebig verändern, weil ja nur ein vorhandenes > Worddokument geöffnet wird. Üblicher wäre ja eigentlich eine PDF oder Hilfedatei (*.chm oder ähnlich) beizulegen, oder auf eine Online-Seite zu verlinken. Die Frage wäre aber: Was würde es denn überhaupt stören, wenn der Nutzer die Worddatei verändert? Dateien mit dessen Standardprogramm kann man via: Process.Start("PfadZurDatei.docx"); öffnen lassen. Damit kann man auch Webseiten mit dem Standardbrowser öffnen. siehe auch: https://msdn.microsoft.com/en-us/library/53ezey2s(v=vs.110).aspx
IMO sinnvoller wäre es den Text entweder als RTF- oder HTML-Dateil zu speichern und mit den dazugehörigen Controls darstellen zu lassen. RichTextBox-Control mit der üblichen ReadOnly-Eigenschaft https://msdn.microsoft.com/en-us/library/System.Windows.Forms.RichTextBox%28v=vs.110%29.aspx oder das WebBrowser-Control https://msdn.microsoft.com/en-us/library/system.windows.forms.webbrowser%28v=vs.110%29.aspx Soll der Text "unveränderbar" sein, können die Texte auch als Resource-Strings in das Programm eingebaut werden (z.B. unter Project -> Properties -> Resources). Anzeigen der Strings über DocumentText beim WebBrowser-Control bzw. Text bei der RichTextBox
Abgesehen von den besagten Möglichkeiten, was hindert dich daran, das Word-Dokument mit einem Kennwort-Schutz zu versehen? Das verhindert unabsichtliche Veränderungen. Mehr willst du ja sowieso nicht schützen, weil ja jeder deinen Text zur Not abtippen und neu als docx speichern kann. Im Übrigen kannst du dir natürlich das Word-Textfenster-Steuerelement aus der entsprechenden DLL in deine App-Domain laden, es instanziieren und mit den passenden Attributen so modifizieren, dass eine Veränderung des Dokuments nicht möglich ist. Zugegeben, es ist ein elendiges Gefummel, vor allem in Sachen Versionierung, aber gehen tut es. msdn.microsoft.com ist wie immer dein bester Freund.
Wenn Du schon Windows-Only Programme schreibst, warum versuchst Du dann nicht auch konsequent die Dinge so umzusetzen wie sie auf dieser Plattform üblich sind, wie sie die User gewohnt sind, wie Microsoft es empfiehlt und auch Tools dafür bereitstellt, also im Falle der Hilfefunktion würde ich die ganz normalen dafür vorgesehenen Formate und eingebauten Tools nehmen damit sich alles nahtlos einfügt und nicht wie amateurhaft hingefrickelt wirkt.
Andreas L. schrieb: > weil ja nur ein vorhandenes > Worddokument geöffnet wird Klar... und ohne installiertes Office-Paket gibt es dann gar keine Hilfe für dein Tool - super Idee :) Nimm eines der oben bereits vorgeschlagenen Formate.
moep schrieb: > Klar... und ohne installiertes Office-Paket gibt es dann gar keine Hilfe > für dein Tool - super Idee :) > Nimm eines der oben bereits vorgeschlagenen Formate. Abgesehen davon, dass deine Bemerkung ins Schwarze trifft: Gerüchten zufolge geht der Trend bei Bedienungsanleitungen und Hilfe-Dateien angeblich zu einem komischen Format namens HTML. Habe ich aber nur so mal gehört. Ob da was dran ist, will ich nicht kommentieren ^^ Im Ernst, seit Word Version Steinzeit.1 kann das Ding XHTML speichern. Das, was dabei rauskommt, ist zwar potthässlich und macht manchem Browser Kopfzerbrechen, aber in der Windows-Welt gibt es den Explorer und Edge, und die kommen beide damit zurecht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.