[QT4, MSVC] Icon + AcrobatReader

Alles rund um die Programmierung mit Qt
m.trix
Beiträge: 49
Registriert: 12. Oktober 2005 09:51
Wohnort: Manhattan

Beitrag von m.trix »

Na gut. So hab ich nicht darüber nachgedacht. War halt einfach der Meinnung, dass es nicht im Sinne von Trolltech's OpenSource/Desktop Gedanken ist. Zahlen=Studio, Umsonst=MinGw.

Zu meiner Verteidigung:
Ich wusste bis vorhin nix von dem Patch.
Es war ziemlich früh als ich das geschrieben hab.
FlorianBecker hat geschrieben:Komisch du bist @m.trix. Nimm es, oder lass es.
Das hast du allerdings Recht.
FlorianBecker
Beiträge: 1213
Registriert: 2. Dezember 2004 10:54
Kontaktdaten:

Beitrag von FlorianBecker »

Qt ist Open Source, und es lebt davon, dass man es in einer freien Community patcht. Warum Trolltech Lizenzen hat? Damit man eben nicht unter GPL entwickeln muss, sondern kommerziell bleiben kann wie sehr viele Leute hier.
Goos
Beiträge: 360
Registriert: 17. August 2004 10:10
Wohnort: Black Forest

Beitrag von Goos »

lepsai hat geschrieben: Dann musst du aber wissen, wo die exe liegt, bei ShellExecute eben nicht
na aber das weiss ich doch :P

Goos
dani
Beiträge: 28
Registriert: 11. August 2005 22:22

Beitrag von dani »

m.trix hat geschrieben:Na gut. So hab ich nicht darüber nachgedacht. War halt einfach der Meinnung, dass es nicht im Sinne von Trolltech's OpenSource/Desktop Gedanken ist. Zahlen=Studio, Umsonst=MinGw.

Zu meiner Verteidigung:
Ich wusste bis vorhin nix von dem Patch.
Es war ziemlich früh als ich das geschrieben hab.
Trolltech hat Qt unter anderem unter der GPL veröffentlicht. Die Version kann man nehmen und es zu den Bedingungen der GPL verändern. Ganz legal.
m.trix
Beiträge: 49
Registriert: 12. Oktober 2005 09:51
Wohnort: Manhattan

Beitrag von m.trix »

@Moderation: Gelöst. Sollen die Codefetzen noch rein?
FlorianBecker
Beiträge: 1213
Registriert: 2. Dezember 2004 10:54
Kontaktdaten:

Beitrag von FlorianBecker »

Ja, wär nett.
m.trix
Beiträge: 49
Registriert: 12. Oktober 2005 09:51
Wohnort: Manhattan

Beitrag von m.trix »

Lösung Programmaufruf:

Code: Alles auswählen

#include <shlobj.h>
#include <shlwapi.h>
#include <shellapi.h>
+ linken von shell32.lib

Code: Alles auswählen

	QFile *helpFile = new QFile("help.pdf");
	
	QFileInfo fileInfo(helpFile->fileName());
	
	int error;
	
	error = (int)ShellExecute(NULL, QString("open").utf16(), fileInfo.absoluteFilePath().utf16(), NULL, NULL, SW_SHOW);

	if(error <= 32)
	{
		QMessageBox::critical(this, tr("ExternalClient"),
									tr("An error occured!\n\n"
									"Please make sure that:\n"
									"- \"help.pdf\" is located in the applications' folder.\n"
									"- You have installed a programm to open *.pdf"));

	}
Lösung Icon:

app.rc:

Code: Alles auswählen

IDI_ICON1               ICON    DISCARDABLE     "icon_name.ico"
app.pro:

Code: Alles auswählen

...
RC_FILE = ExternalClient.rc
...
app.qrc:

Code: Alles auswählen

<RCC>
    <qresource>
        <file>icon_name.ico</file>
    </qresource>
</RCC>
Damit muss das Icon dann nicht mit dem Programm mitgegeben werden, sondern ist in der app.exe mit dabei.


Und noch ein abschließendes Danke an alle die mitgeholfen haben.
Antworten