<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[PopFileOpenDlg - nur pfad an andere klasse übergeben]]></title><description><![CDATA[<p>hi, ich hänge mal wieder. ich habe versucht eine standard open file dialogbox zu implementieren. was ich brauche ist einfach nur den pfad der datei, damit ich diesen in meiner gl-klasse so beutzen kann:</p>
<p>TextureImageHead=LoadBMP(&quot;hier dann der pfad&quot;);</p>
<p>mein problem liegt glaube ich in der korrekten übergabe zur gl-klasse... was genau muss ich übergeben, doch schon das hFile, oder? vor allem steht da dann aber doch mehr drin wie nur der pfad?! bin offen für ideen, denn wenn ich das hFile in meiner gl-klasse eintrage kommmt: udeclared identifier ... wie bekomme ich das hin, dass es angenommen wird...</p>
<p>Hier der Aufruf:</p>
<pre><code class="language-cpp">LRESULT CALLBACK WndProc(	HWND	hWnd,			// Handle For This Window
							UINT	uMsg,			// Message For This Window
							WPARAM	wParam,			// Additional Message Information
							LPARAM	lParam)			// Additional Message Information
{

	HMENU hMenu;
	POINT point;

	switch (uMsg)									// Check For Windows Messages
	{
		case WM_CREATE :
			PopFileInitialize (hWnd); // Initialisierung
        return 0 ;

		case WM_COMMAND:
			hMenu=GetMenu(hWnd);

			switch (LOWORD (wParam))
			{
			case ID_MESH_HEAD:
			PopFileOpenDlg (hWnd, lpstrDateiname, NULL);
			hFile = CreateFile(ofn.lpstrFile ,GENERIC_READ, 0, (LPSECURITY_ATTRIBUTES) NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,(HANDLE) NULL);

//NUN SOLL IN DER GL-KLASSE NUN IN DER FUNKTION void INITGL() DER AUFRUF //TextureImageHead=LoadBMP(&quot;Data/REF/head1.bmp&quot;); ANSTELLE DES STRINGS MIT DEM //PFAD AUS DEM POPFILEDIALOG GEFÜTTERT WERDEN, ANSCHLIESSEN ERNEUTER AUFRUF DER //INITGL

			break;
</code></pre>
<p>die funktion:</p>
<pre><code class="language-cpp">// Den &quot;Öffnen&quot; Dialog anzeigen und das Handle zum File zurückliefern
BOOL PopFileOpenDlg (HWND hwnd, PTSTR pstrFileName, PTSTR pstrTitleName)
{
   ofn.hwndOwner = hwnd;
   ofn.lpstrFile = pstrFileName;
   ofn.lpstrFileTitle = pstrTitleName;
   ofn.Flags = OFN_HIDEREADONLY | OFN_CREATEPROMPT;

   return GetOpenFileName(&amp;ofn);
}
</code></pre>
<p>und deren Initialisierung:</p>
<pre><code class="language-cpp">// Initialisierung der OPENFILENAME-Struktur
void PopFileInitialize (HWND hwnd)
{
// welche Dateitypen sollen ausgewählt werden können
   static TCHAR szFilter[] = TEXT (&quot;Alle Dateien (*.*)\0*.*\0&quot;);
	static char path[MAX_PATH]={&quot;&quot;}; 

   ZeroMemory(&amp;ofn, sizeof(OPENFILENAME));
   ofn.lStructSize = sizeof (OPENFILENAME);
   ofn.hwndOwner = hwnd;
   ofn.hInstance = NULL;
   ofn.lpstrFilter = szFilter;
   ofn.lpstrCustomFilter = NULL;
   ofn.nMaxCustFilter = 0;
   ofn.nFilterIndex = 0;
   ofn.lpstrFile = path; // Bei Öffnen bzw. Schließen gesetzt
   ofn.nMaxFile = MAX_PATH;
   ofn.lpstrFileTitle = NULL; // Bei Öffnen bzw. Schließen gesetzt
   ofn.nMaxFileTitle = 0;
   ofn.lpstrInitialDir = NULL;
   ofn.lpstrTitle = NULL;
   ofn.Flags = 0; // Bei Öffnen bzw. Schließen gesetzt
   ofn.nFileOffset = 0;
   ofn.nFileExtension = 0;
   ofn.lpstrDefExt = TEXT (&quot;obj&quot;);
   ofn.lCustData = 0L;
   ofn.lpfnHook = NULL;
   ofn.lpTemplateName = NULL;
}
</code></pre>
<p>geetz &amp; thnx</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/196266/popfileopendlg-nur-pfad-an-andere-klasse-übergeben</link><generator>RSS for Node</generator><lastBuildDate>Wed, 17 Jun 2026 19:54:56 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/196266.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 27 Oct 2007 15:22:26 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to PopFileOpenDlg - nur pfad an andere klasse übergeben on Sat, 27 Oct 2007 15:22:26 GMT]]></title><description><![CDATA[<p>hi, ich hänge mal wieder. ich habe versucht eine standard open file dialogbox zu implementieren. was ich brauche ist einfach nur den pfad der datei, damit ich diesen in meiner gl-klasse so beutzen kann:</p>
<p>TextureImageHead=LoadBMP(&quot;hier dann der pfad&quot;);</p>
<p>mein problem liegt glaube ich in der korrekten übergabe zur gl-klasse... was genau muss ich übergeben, doch schon das hFile, oder? vor allem steht da dann aber doch mehr drin wie nur der pfad?! bin offen für ideen, denn wenn ich das hFile in meiner gl-klasse eintrage kommmt: udeclared identifier ... wie bekomme ich das hin, dass es angenommen wird...</p>
<p>Hier der Aufruf:</p>
<pre><code class="language-cpp">LRESULT CALLBACK WndProc(	HWND	hWnd,			// Handle For This Window
							UINT	uMsg,			// Message For This Window
							WPARAM	wParam,			// Additional Message Information
							LPARAM	lParam)			// Additional Message Information
{

	HMENU hMenu;
	POINT point;

	switch (uMsg)									// Check For Windows Messages
	{
		case WM_CREATE :
			PopFileInitialize (hWnd); // Initialisierung
        return 0 ;

		case WM_COMMAND:
			hMenu=GetMenu(hWnd);

			switch (LOWORD (wParam))
			{
			case ID_MESH_HEAD:
			PopFileOpenDlg (hWnd, lpstrDateiname, NULL);
			hFile = CreateFile(ofn.lpstrFile ,GENERIC_READ, 0, (LPSECURITY_ATTRIBUTES) NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,(HANDLE) NULL);

//NUN SOLL IN DER GL-KLASSE NUN IN DER FUNKTION void INITGL() DER AUFRUF //TextureImageHead=LoadBMP(&quot;Data/REF/head1.bmp&quot;); ANSTELLE DES STRINGS MIT DEM //PFAD AUS DEM POPFILEDIALOG GEFÜTTERT WERDEN, ANSCHLIESSEN ERNEUTER AUFRUF DER //INITGL

			break;
</code></pre>
<p>die funktion:</p>
<pre><code class="language-cpp">// Den &quot;Öffnen&quot; Dialog anzeigen und das Handle zum File zurückliefern
BOOL PopFileOpenDlg (HWND hwnd, PTSTR pstrFileName, PTSTR pstrTitleName)
{
   ofn.hwndOwner = hwnd;
   ofn.lpstrFile = pstrFileName;
   ofn.lpstrFileTitle = pstrTitleName;
   ofn.Flags = OFN_HIDEREADONLY | OFN_CREATEPROMPT;

   return GetOpenFileName(&amp;ofn);
}
</code></pre>
<p>und deren Initialisierung:</p>
<pre><code class="language-cpp">// Initialisierung der OPENFILENAME-Struktur
void PopFileInitialize (HWND hwnd)
{
// welche Dateitypen sollen ausgewählt werden können
   static TCHAR szFilter[] = TEXT (&quot;Alle Dateien (*.*)\0*.*\0&quot;);
	static char path[MAX_PATH]={&quot;&quot;}; 

   ZeroMemory(&amp;ofn, sizeof(OPENFILENAME));
   ofn.lStructSize = sizeof (OPENFILENAME);
   ofn.hwndOwner = hwnd;
   ofn.hInstance = NULL;
   ofn.lpstrFilter = szFilter;
   ofn.lpstrCustomFilter = NULL;
   ofn.nMaxCustFilter = 0;
   ofn.nFilterIndex = 0;
   ofn.lpstrFile = path; // Bei Öffnen bzw. Schließen gesetzt
   ofn.nMaxFile = MAX_PATH;
   ofn.lpstrFileTitle = NULL; // Bei Öffnen bzw. Schließen gesetzt
   ofn.nMaxFileTitle = 0;
   ofn.lpstrInitialDir = NULL;
   ofn.lpstrTitle = NULL;
   ofn.Flags = 0; // Bei Öffnen bzw. Schließen gesetzt
   ofn.nFileOffset = 0;
   ofn.nFileExtension = 0;
   ofn.lpstrDefExt = TEXT (&quot;obj&quot;);
   ofn.lCustData = 0L;
   ofn.lpfnHook = NULL;
   ofn.lpTemplateName = NULL;
}
</code></pre>
<p>geetz &amp; thnx</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1393108</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1393108</guid><dc:creator><![CDATA[eugler]]></dc:creator><pubDate>Sat, 27 Oct 2007 15:22:26 GMT</pubDate></item><item><title><![CDATA[Reply to PopFileOpenDlg - nur pfad an andere klasse übergeben on Sat, 27 Oct 2007 15:56:47 GMT]]></title><description><![CDATA[<p>ja und was ist jetzt dein problem? du hast doch den datei pfad. wenn du deiner LoadBMP funktion ein datei handle übergeben willst, dann schreib sie halt um <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1393141</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1393141</guid><dc:creator><![CDATA[tenchou]]></dc:creator><pubDate>Sat, 27 Oct 2007 15:56:47 GMT</pubDate></item><item><title><![CDATA[Reply to PopFileOpenDlg - nur pfad an andere klasse übergeben on Sat, 27 Oct 2007 16:09:52 GMT]]></title><description><![CDATA[<p>kann ich nicht einfach das handle irgendwie in einen string wandeln, so dass ich diesen string als variable meiner gl-klasse übergeben kann?<br />
weiss nicht genau, wie du das meinst, die Funktion umzuschreiben, dass sie ein handle annimmt... dies ist die funktion</p>
<pre><code class="language-cpp">AUX_RGBImageRec* GL::LoadBMP(char *Filename)				// Loads A Bitmap Image
{
	FILE *File=NULL;									// File Handle

	if (!Filename)										// Make Sure A Filename Was Given
	{
		return NULL;									// If Not Return NULL
	}

	File=fopen(Filename, &quot;r&quot;);							// Check To See If The File Exists

	if (File)											// Does The File Exist?
	{
		fclose(File);									// Close The Handle
		return auxDIBImageLoad(Filename);				// Load The Bitmap And Return A Pointer
	}

	return NULL;										// If Load Failed Return NULL
}
</code></pre>
<p>bin dankbar für einen tip <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1393146</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1393146</guid><dc:creator><![CDATA[eugler]]></dc:creator><pubDate>Sat, 27 Oct 2007 16:09:52 GMT</pubDate></item><item><title><![CDATA[Reply to PopFileOpenDlg - nur pfad an andere klasse übergeben on Sat, 27 Oct 2007 16:42:24 GMT]]></title><description><![CDATA[<p>wieso übergibst du der funktion denn nicht einfach ofn.lpstrFile? Das ist doch schon der pfad zur datei. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1393163</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1393163</guid><dc:creator><![CDATA[tenchou]]></dc:creator><pubDate>Sat, 27 Oct 2007 16:42:24 GMT</pubDate></item></channel></rss>