<?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[problem mit shlwapi.h in C-File ...]]></title><description><![CDATA[<p>hallo,</p>
<p>ich habe da eine c++ dialogbasierte anwendung und hierzu einige c-dateien aus denen bestimmte funktionalitaeten fuer den dialog gebraucht werden.</p>
<p>in den c-files kommen system(...) aufrufe vor, die zur folge haben dass eine dos-box aufpoppt.<br />
ich wollte nun diese durch aufruf von ShellExecuteEx(..) ersetzen.<br />
Hierzu habe ich in dem betreffen c-file die header windows.h und shlwapi.h<br />
includiert.</p>
<p>allerdings meckert mein compiler dann bei folgendem code:</p>
<pre><code>// ...
SHELLEXECUTEINFO sei; 
ZeroMemory( &amp;sei, sizeof( sei ) ); 
sei.cbSize       = sizeof( sei ); 
sei.fMask        = SEE_MASK_NOCLOSEPROCESS; 
sei.lpFile       = LPCTSTR(msg); 
sei.lpParameters = NULL;
sei.lpDirectory  = NULL; 
sei.nShow        = SW_HIDE; 
// ...
</code></pre>
<p>sowas wie:<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(65) : error C2275: &quot;SHELLEXECUTEINFO&quot; : Ungültige Verwendung dieses Typs als Ausdruck<br />
c:\programme\microsoft visual studio\vc98\include\shellapi.h(429) : Siehe Deklaration von 'SHELLEXECUTEINFO'<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(65) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'sei'<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(65) : error C2065: 'sei' : nichtdeklarierter Bezeichner<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(67) : error C2224: Der linke Teil von '.cbSize' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(68) : error C2224: Der linke Teil von '.fMask' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(69) : error C2224: Der linke Teil von '.lpFile' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(69) : error C2063: 'LPCTSTR' : Keine Funktion<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(70) : error C2224: Der linke Teil von '.lpParameters' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(71) : error C2224: Der linke Teil von '.lpDirectory' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(72) : error C2224: Der linke Teil von '.nShow' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(74) : warning C4133: 'function' : Inkompatible Typen - von 'char *' zu 'struct HWND__ *'</p>
<p>etc.</p>
<p>es liegt jedoch kein syntax-fehler vor denke ich, zumal ich obigen code-schnippsel aus einem cpp-file uebernommen habe wo er funktionierte.<br />
ich denke es hat was mit headern zu tun!?</p>
<p>ein tipp waere sehr hilfreich,</p>
<p>vielen dank.<br />
gruss</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/77691/problem-mit-shlwapi-h-in-c-file</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Apr 2026 12:16:10 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/77691.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 23 Jun 2004 13:17:02 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to problem mit shlwapi.h in C-File ... on Wed, 23 Jun 2004 13:17:02 GMT]]></title><description><![CDATA[<p>hallo,</p>
<p>ich habe da eine c++ dialogbasierte anwendung und hierzu einige c-dateien aus denen bestimmte funktionalitaeten fuer den dialog gebraucht werden.</p>
<p>in den c-files kommen system(...) aufrufe vor, die zur folge haben dass eine dos-box aufpoppt.<br />
ich wollte nun diese durch aufruf von ShellExecuteEx(..) ersetzen.<br />
Hierzu habe ich in dem betreffen c-file die header windows.h und shlwapi.h<br />
includiert.</p>
<p>allerdings meckert mein compiler dann bei folgendem code:</p>
<pre><code>// ...
SHELLEXECUTEINFO sei; 
ZeroMemory( &amp;sei, sizeof( sei ) ); 
sei.cbSize       = sizeof( sei ); 
sei.fMask        = SEE_MASK_NOCLOSEPROCESS; 
sei.lpFile       = LPCTSTR(msg); 
sei.lpParameters = NULL;
sei.lpDirectory  = NULL; 
sei.nShow        = SW_HIDE; 
// ...
</code></pre>
<p>sowas wie:<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(65) : error C2275: &quot;SHELLEXECUTEINFO&quot; : Ungültige Verwendung dieses Typs als Ausdruck<br />
c:\programme\microsoft visual studio\vc98\include\shellapi.h(429) : Siehe Deklaration von 'SHELLEXECUTEINFO'<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(65) : error C2146: Syntaxfehler : Fehlendes ';' vor Bezeichner 'sei'<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(65) : error C2065: 'sei' : nichtdeklarierter Bezeichner<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(67) : error C2224: Der linke Teil von '.cbSize' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(68) : error C2224: Der linke Teil von '.fMask' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(69) : error C2224: Der linke Teil von '.lpFile' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(69) : error C2063: 'LPCTSTR' : Keine Funktion<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(70) : error C2224: Der linke Teil von '.lpParameters' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(71) : error C2224: Der linke Teil von '.lpDirectory' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(72) : error C2224: Der linke Teil von '.nShow' muss eine Struktur/Union sein<br />
t:\testmate1.5.2a\sourcen\merge_scp\vc\scp_merge.c(74) : warning C4133: 'function' : Inkompatible Typen - von 'char *' zu 'struct HWND__ *'</p>
<p>etc.</p>
<p>es liegt jedoch kein syntax-fehler vor denke ich, zumal ich obigen code-schnippsel aus einem cpp-file uebernommen habe wo er funktionierte.<br />
ich denke es hat was mit headern zu tun!?</p>
<p>ein tipp waere sehr hilfreich,</p>
<p>vielen dank.<br />
gruss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/546466</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/546466</guid><dc:creator><![CDATA[peperonee]]></dc:creator><pubDate>Wed, 23 Jun 2004 13:17:02 GMT</pubDate></item><item><title><![CDATA[Reply to problem mit shlwapi.h in C-File ... on Thu, 24 Jun 2004 07:57:02 GMT]]></title><description><![CDATA[<p>hat vielleicht irgendjemand netterweise einen tipp oder ne idee zu meinem beitrag?</p>
<p>vieeelen dank.</p>
<p>gruss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/546934</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/546934</guid><dc:creator><![CDATA[peperonee]]></dc:creator><pubDate>Thu, 24 Jun 2004 07:57:02 GMT</pubDate></item><item><title><![CDATA[Reply to problem mit shlwapi.h in C-File ... on Thu, 24 Jun 2004 08:20:44 GMT]]></title><description><![CDATA[<p>ok war mein fehler, sorry.<br />
ich habe einen ganz dummen fehler gemacht. Eine Variablen-deklaration in C(!!)-Funktionen muss immer am anfang einer funktion stehen. Bei mir stand sie mittendrin C++ -like sozusagen.</p>
<p>trotzdem danke.</p>
<p>gruss</p>
]]></description><link>https://www.c-plusplus.net/forum/post/546945</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/546945</guid><dc:creator><![CDATA[peperonee]]></dc:creator><pubDate>Thu, 24 Jun 2004 08:20:44 GMT</pubDate></item></channel></rss>