Visual Studio C++: Programmcode zum anzeigen einer PDF gesucht!

Don_2020

Lt. Commander
Registriert
Aug. 2019
Beiträge
1.467
Mit Visual Studio 2019 soll programmiert werden. Anzeige einer beliebigen pdf.
Wie macht man das? Es wäre toll wenn hier jemand ein Beispielcode posten könnte. In Internet habe ich nichts brauchbares gefunden.

Danke
 
Falls niemand was besseres weiß:
Ich hab das vor (10?) Jahren mal gemacht, da ging das über ein Webview (oder wie auch immer das heißt. Das Element zum Webseiten anzeigen), in das ich irgendwie die PDF eingebunden habe. Vielleicht geht das in der Richtung noch irgendwie.
 
  • Gefällt mir
Reaktionen: Ice-Lord
Code:
void main()
{
    system( "start dateiname.pdf" );
}
 
  • Gefällt mir
Reaktionen: Ebrithil, Xonical und BAGZZlash
Ich glaube dir ehrlich gesagt nicht, dass du nichts gefunden hast im Netz. Auf Anhieb konnte ich zwei FOS-Bibliotheken finden für C++. MuPDF und Poppler wären das.
Ansonsten könnte deine Frage wohl kaum unspezifischer sein. Was erwartest du überhaupt? Es gibt absolut Null Informationen. Aber eine Lösung sollen wir dir herbeizaubern. Eigeninitiative? Ebenfalls Fehlanzeige.
 
  • Gefällt mir
Reaktionen: BAGZZlash und C:\Defuse_Kit
Ich finde da auf die schnelle auch X
Frei und kostenpflichtig

Ich denke hier hat man die Qual der Wahl
Das Format ist ja nicht gerade exotisch

Gehts hier um das Programmieren selber oder ums einbinden in das Projekt ?
also die lib files?

EDIT:
Wenn der "ProgrammCode" selber gesucht wird es gibt freie openSource PDF
Viewer.
"Source laden ProgrammCode haben"
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: netzgestaltung
Was benutzt du? MFC? GTK? WxWidgets?

Mit Qt lässt sich sowas einfach umsetzen. Spreche aus Erfahrung. :)

https://doc.qt.io/qt-5/qtpdf-pdfviewer-example.html
Ergänzung ()

Falls man unbedingt mit VS im Zusammenspiel mit Qt arbeiten will:

https://marketplace.visualstudio.com/items?itemName=TheQtCompany.QtVisualStudioTools-19123
Ergänzung ()

Ach, ich dachte es geht um C++. Zumindest wurden ja C++ Lösungen angeboten. Der Threadersteller spricht ja aber nur von der IDE. Nun ja...was soll man dazu sagen. :rolleyes:
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Ice-Lord
Sollen wir für dich auch gleich das Studium übernehmen? Jetzt mal ehrlich, seit Corona werden diese Anfragen immer mehr und wie schon gesagt, NULL Eigeninitiative...
 
  • Gefällt mir
Reaktionen: mental.dIseASe und Ice-Lord
Danke an alle. Gesucht wird nur die Anzeige einer PDF-Datei. Nix weiter.
Visual Studio 2019 sollte klar sein, das hier für Windows programmiert werden soll. Also kein MFC, GTK oder WxWidgetsGtk. Der Tip mit der Bibliothek war schon sehr hilfreich.
Fürs Studium brauche ich das nicht. Privat nur so zum Spaß am programmieren. Mit den Profis will und kann ich gar nicht mithalten.
Es soll nur eine Hilfeseite im PDF-Format angezeigt werden. Ich ich weiss, das kann man auch anders machen.
 
Also Managed C++ (gehe mal davon aus). Dann vermutlich WinForms. Gerade das ist halt wichtig.

Das M in MFC steht für Microsoft. Also Windows. Und die von mir aufgelisteten UI-Toolkits sind "Cross Plattform" (außer MFC, was schon ein paar Jahre auf dem Buckel hat), aber damals der Standard für C++ Anwendungen von Visual Studio, bzw. (eher) dem Vorgänger, war.


Das ist deswegen so relevant, weil es eventuell schon ein Steuerelement dafür geben könnte. Aber das muss, bzw. sollte natürlich passen.

Viel Erfolg aber und vor allen Dingen viel Spaß!
Ergänzung ()

Noch etwas. Wenn es Managed C++ (also .NET) ist, dann kannst du dein gewünschtes PDF auch über Process aufrufen:

https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.process.start?view=net-5.0

Ansonsten ist #4 bei "Standard"-C++ der alternative Ansatz. Es öffnet sich dann die für das PDF in Windows registrierte Anwendung.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: RalphS
Don_2020 schrieb:
Gesucht wird nur die Anzeige einer PDF-Datei. Nix weiter.
"Nix weiter" ist gut gemeint, aber allein das ist zu unspezifisch. Soll die Datei nativ in deinem Program angezeigt werden? Oder kann sie auch einfach nur in einem anderen Tool geöffnet werden? Cross Platform? Wie stellst du bisher Inhalte dar? Überhaupt eine GUI vorhanden? Sind dir Lizenzen wichtig?
 
Zuletzt bearbeitet:
KitKat::new() schrieb:
Ich bin halt mal davon ausgegangen. Genaueres hatte ja der Threadersteller nicht mitgeteilt.
Und warum WinForms? Nun ja, der Einstieg ist halt leicht.:p

Bei XAML muss (oder sollte) man viel mit CodeBehind arbeiten. Das Binding muss man auch erst einmal verstehen.:) Da ist WinForms schon erst einmal einfacher. Deswegen auch nur mutgemaßt, weil ich ja erst einmal nur raten kann.

Und UWP (quasi der Nachfolger zu WinRT) - ja, das ginge auch. Habe ich noch nie probiert. Mit XAML (und somit WPF und UWP) kenne ich mich auch nicht wirklich aus. Wobei AvaloniaUI (mir ist es halt wichtig, dass meine Anwendungen sowohl unter Linux, als auch unter Windows laufen) hatte ich vor kurzem mal angetestet. Fand ich ganz gut soweit.
 
@Xonical
Winforms sind wirklich angenehm einfach zu benutzen
so einfach das es einem oft vorkommt man macht gar nichts mehr selber.

Aber der TE hatte doch gesagt C++ oder?
wenns um C# geht.
Da gibts sicher schon fertige Assembiels oder plugins von M$ oder 3rd party
die einfach "plug & play " sind
( C# halt )
 
Der TE spricht von "Visual Studio 2019", welche Programmiersprache verwendet wird wurde nicht angesprochen.
 
@sh.
Steht nicht im Titel C++ ?
 
  • Gefällt mir
Reaktionen: lemon03 und KitKat::new()
Ja, im Titel. Aber im Beitrag vom Threadersteller (der sich übrigens seit einiger Zeit nicht mehr gemeldet hat). steht halt nix genaueres.

Und WinForms Projekte gehen vermutlich auch noch wie früher. Mittlerweile braucht es dafür aber anscheinend ein Template.

https://marketplace.visualstudio.com/items?itemName=RichardKaiser.CppWinformsVS2019VSIX001

Genau wie für MFC anno dazumal (VS 2012 ???), als sie aus VS als Projektvorlage rausgeschmissen hatten.

Habe mir einmal VS 2019 angeschaut. Da fanden ja auch schon wieder große Veränderungen statt.

Wenn man da im "Assistenten" Desktop auswählt, hat man gar keine Wahl.

Und was enthält das "Hello World"-Fenster?

WNDCLASSEXW -> Win32 API -> Programmiersprache C

https://docs.microsoft.com/en-us/windows/win32/api/winuser/ns-winuser-wndclassexw

Na ja. Da gab es noch mehrere Optionen (ich hatte mich über den Assistenten nur assistieren lassen). Das kann jemand anderes übernehmen (der sich mit den neuen VS-Versionen auskennt). Eventuell habe ich auch was im Installationsprozess von VS 2019 irgendetwas nicht angeklickt (ist schon ein paar Monate her).

Ice-Lord schrieb:
@Xonical
Winforms sind wirklich angenehm einfach zu benutzen
so einfach das es einem oft vorkommt man macht gar nichts mehr selber.

Aber der TE hatte doch gesagt C++ oder?
wenns um C# geht.
Da gibts sicher schon fertige Assembiels oder plugins von M$ oder 3rd party
die einfach "plug & play " sind
( C# halt )
@Ice-Lord -> siehe Link zum Marketplace. Jedoch sind WinForms-Projekte kein "klassisches C++". MS nennt das C++/CLI. Eigentlich ist es eine ganz andere Programmiersprache als C++.

https://de.wikipedia.org/wiki/C++/CLI
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Ice-Lord
Sorry, das ich mich erst jetzt melde. In meinem Skihotel gab es kein Internet.
Danke für den Tipp mit dem Marktplace. Den kannte ich noch nicht.
 
  • Gefällt mir
Reaktionen: Ice-Lord und Xonical
Zurück
Oben