<?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[Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( )]]></title><description><![CDATA[<p>Hi all,<br />
da ich in dem diesen hier ähnelndem Thread keine verwirrung stiften will kappsel ich mich mal ab...</p>
<p>Ich habe einen Lokalen Admin, und einen User in der Domaine.<br />
Ich bin mit dem User aus der Domaine auf meinem Computer eingeloggt und habe keine Adminrechte.<br />
Ich lese SMART parameter aus, das geht in Vista nur noch als Admin soweit ich weiß, und bei mehr als XX% benutztem reservierten Speichersektoren soll eine Email gesendet werden.<br />
Hierzu muss ich der User aus der Domaine sein, sonst erkennt mich der Mailserver nicht.<br />
Also habe ich zwei Programme, eins im Admin-Modus und eins als Domaineuser.</p>
<p>Ich habe mir gedacht das ein Programm in einen geteilten Speicherbereich eine 1 schreibt und das andere diese Ziffer ausliest und bei der 1 halt ne Mail sendet.<br />
Dies klappt ganz gut. Allerdings soll das Mail-Programm diesen Speicherbereich wieder auf 0 setzen.</p>
<p>Hier ist der Haken. Um in diesen Speicher zu schreiben muss ich Admin sein, dann wiederum kann ich keine Mail senden, und dann ist alles umsonst. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Schwer zu lesen hoffentlich verständlich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Kennt wer einen Workarround?<br />
Eine lösung?</p>
<p>Ansi C<br />
Konsolenprogrammierung</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/209575/kommunikation-shared-mem-dienst-und-prog-admin-kann-desswegen-shared-mem-nich-öffnen</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Apr 2026 20:36:33 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/209575.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 01 Apr 2008 11:26:22 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Fri, 02 May 2008 09:49:59 GMT]]></title><description><![CDATA[<p>Hi all,<br />
da ich in dem diesen hier ähnelndem Thread keine verwirrung stiften will kappsel ich mich mal ab...</p>
<p>Ich habe einen Lokalen Admin, und einen User in der Domaine.<br />
Ich bin mit dem User aus der Domaine auf meinem Computer eingeloggt und habe keine Adminrechte.<br />
Ich lese SMART parameter aus, das geht in Vista nur noch als Admin soweit ich weiß, und bei mehr als XX% benutztem reservierten Speichersektoren soll eine Email gesendet werden.<br />
Hierzu muss ich der User aus der Domaine sein, sonst erkennt mich der Mailserver nicht.<br />
Also habe ich zwei Programme, eins im Admin-Modus und eins als Domaineuser.</p>
<p>Ich habe mir gedacht das ein Programm in einen geteilten Speicherbereich eine 1 schreibt und das andere diese Ziffer ausliest und bei der 1 halt ne Mail sendet.<br />
Dies klappt ganz gut. Allerdings soll das Mail-Programm diesen Speicherbereich wieder auf 0 setzen.</p>
<p>Hier ist der Haken. Um in diesen Speicher zu schreiben muss ich Admin sein, dann wiederum kann ich keine Mail senden, und dann ist alles umsonst. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Schwer zu lesen hoffentlich verständlich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Kennt wer einen Workarround?<br />
Eine lösung?</p>
<p>Ansi C<br />
Konsolenprogrammierung</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1484365</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1484365</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Fri, 02 May 2008 09:49:59 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Tue, 01 Apr 2008 12:29:36 GMT]]></title><description><![CDATA[<p>Wie legst Du die memory mapped file an?<br />
Du hast vermutlich NULL für die Security Attribute angegeben.</p>
<p>Hatten wir das nicht gerade erst mit Named Pipes, das problem ist uter Vista identisch:<br />
<a href="http://blog.m-ri.de/index.php/2007/02/21/uac-und-createnamedpipe-mit-lpsecurityattributesnull/" rel="nofollow">http://blog.m-ri.de/index.php/2007/02/21/uac-und-createnamedpipe-mit-lpsecurityattributesnull/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1484443</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1484443</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 01 Apr 2008 12:29:36 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Tue, 01 Apr 2008 12:41:31 GMT]]></title><description><![CDATA[<p>War deine Aussage mit named-pipes auf mich bezogen?</p>
<p>Ich habe mal mit Pipes gearbeitet ja... aber die bringen mir hier nichts, da ich das programm ja nicht aus dem Admin-Prog aufrufen kann/darf...</p>
<p>Du bist ein freak vom fach ehrlich(nicht negativ)<br />
Das mit diesen DACL habe ich noch nie gepielt, man sollte keine eigenen machen, aber die Vorhandenen sind auch nirgends gelistet...</p>
<pre><code class="language-cpp">//prog 1
int main( void )
	//Diese Funktion schreibt in einen geteilten Speicherbereich, wenn dieser Speicherbereich beschrieben ist, wird aus einem anderen Programm eine
	//Email gesendet.
{
	HANDLE		shareMem = 0;//handle zum Speicher
	LPTSTR		buff; //unbekannt

	shareMem = 	CreateFileMapping(
					INVALID_HANDLE_VALUE,   //geteileter Speicher
					NULL,					//std security attributes
					PAGE_READWRITE,			//lese und schreibzugriff
					0,						//maximale größe des objekts
					buffSize,				//buffergröße
					buffName				//buffername
				);
	if( NULL != shareMem )
	{
		buff = 	(LPTSTR)MapViewOfFile(		//&quot;verbindungsaufbau&quot; zu shared-mem
					shareMem,				//handle zu dem Speicher
					FILE_MAP_ALL_ACCESS,	//zugriffsrechte
					0,						//word's high-order offset
					0,						//word's low-order offset
					buffSize				//größe des speichers/zu schreibenden buffers
				);
		if( NULL != buff )
		{
			CopyMemory(					//kopiert einen speicherbereich zu einem anderen
				(PVOID)buff,			//startadresse des ziel-speicherbereiches
				TEXT(&quot;1&quot;),				//startadresse des source-speicherbereiches
				strlen( TEXT(&quot;1&quot;) )		//größe des source-speicherbereiches
			);
			system( &quot;pause&quot; );

			UnmapViewOfFile( buff );	//&quot;verbindungsabbau&quot; zu shared-mem
			CloseHandle( shareMem );
		}
		else
			printf( &quot;MapViewOfFile: %d\n&quot;, GetLastError() );
	}
	else
		printf( &quot;CreateFileMapping: %d\n&quot;, GetLastError() );
}

//prog2
BOOL shouldSend( void )
{
	HANDLE		shareMem = 0;//handle zum Speicher
	LPTSTR		buff; //unbekannt
	BOOL		retValue = FALSE;

	shareMem = 	OpenFileMapping(
					FILE_MAP_WRITE,			//lesezugriff
					FALSE,					//namen nicht vererben
					buffName				//buffername
				);
	if( NULL != shareMem )
	{
		buff = 	(LPTSTR)MapViewOfFile(		//&quot;verbindungsaufbau&quot; zu shared-mem
					shareMem,				//handle zu dem Speicher
					FILE_MAP_WRITE,			//zugriffsrechte
					0,						//word's high-order offset
					0,						//word's low-order offset
					buffSize				//größe des speichers/zu schreibenden buffers
				);
		if( NULL != buff )
		{
			if( '1' == buff[0] )
				retValue = TRUE;

			CopyMemory(					//kopiert einen speicherbereich zu einem anderen
				(PVOID)buff,			//startadresse des ziel-speicherbereiches
				TEXT(&quot;0&quot;),				//startadresse des source-speicherbereiches
				strlen( TEXT(&quot;0&quot;) )		//größe des source-speicherbereiches
			);

			UnmapViewOfFile( buff );	//&quot;verbindungsabbau&quot; zu shared-mem
			CloseHandle( shareMem );
		}
		else
			printf( &quot;MapViewOfFile: %d\n&quot;, GetLastError() );
	}
	else
		printf( &quot;OpenFileMapping: %d\n&quot;, GetLastError() );

	return retValue;
}
</code></pre>
<p>reicht dir das?<br />
Viel mehr ist das ja nich <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1484455</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1484455</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Tue, 01 Apr 2008 12:41:31 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Tue, 01 Apr 2008 22:42:08 GMT]]></title><description><![CDATA[<blockquote>
<p>Du hast vermutlich NULL für die Security Attribute angegeben</p>
</blockquote>
]]></description><link>https://www.c-plusplus.net/forum/post/1484887</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1484887</guid><dc:creator><![CDATA[rofler]]></dc:creator><pubDate>Tue, 01 Apr 2008 22:42:08 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Wed, 02 Apr 2008 06:47:29 GMT]]></title><description><![CDATA[<p>rofler schrieb:</p>
<blockquote>
<blockquote>
<p>Du hast vermutlich NULL für die Security Attribute angegeben</p>
</blockquote>
</blockquote>
<p>Danke für deinen Post aber er bringt mir nichts.<br />
Ja ich arbeite mit Security_Attribute == NULL aber ich wüsste auch nicht es anders zu machen.<br />
In Martins Blog steht man soll DACLs benutzen aber ich hatte ihn schon gefragt wie man damit umgeht, bei MSDN steht mann solle sie nicht verändern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1484955</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1484955</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Wed, 02 Apr 2008 06:47:29 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Wed, 02 Apr 2008 07:44:12 GMT]]></title><description><![CDATA[<p>Wie soll man Dir ncoh helfen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /><br />
In meinem Blog steht alles!!!</p>
<p>lippoliv schrieb:</p>
<blockquote>
<p>Ja ich arbeite mit Security_Attribute == NULL aber ich wüsste auch nicht es anders zu machen.</p>
</blockquote>
<p>In dem Du eben einen angibst!!!</p>
<p>lippoliv schrieb:</p>
<blockquote>
<p>In Martins Blog steht man soll DACLs benutzen aber ich hatte ihn schon gefragt wie man damit umgeht, bei MSDN steht mann solle sie nicht verändern.</p>
</blockquote>
<p>Eben!<br />
In meinem Blog steht Code! Dort wird eine Pipe erzeugt. Dort wird eine DACL angegeben für den Zurgiff auf Everyone. Und es steht sogar noch eine Erklärung drin warm und wieso...</p>
<p>Und wo bitte steht, dass man die DACL nicht verändenrt soll?<br />
Wenn man ein Objekt anlegt im OS dann muss man ihm zuweisen wer welche Rechte darauf hat! Du gibst nichts an, also gelten Default Rechte. Die sind aber unter Vista nicht brauchbar! Schon gar nicht wenn ein Prozess evlevated läuft.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1484974</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1484974</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Wed, 02 Apr 2008 07:44:12 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Wed, 02 Apr 2008 12:46:14 GMT]]></title><description><![CDATA[<p>Ich bin mit einem Teil diener aussage nicht einverstanden.</p>
<p>Martin Richter schrieb:</p>
<blockquote>
<p>In meinem Blog steht Code! Dort wird eine Pipe erzeugt.</p>
</blockquote>
<p>Du hast mir einen <a href="http://blog.m-ri.de/index.php/2007/02/21/uac-und-createnamedpipe-mit-lpsecurityattributesnull/" rel="nofollow">Link</a> gegeben wo steht dass man nicht NULL angeben soll, aber Code... Sry aber den sehe ich da nicht...</p>
<p>Martin Richter schrieb:</p>
<blockquote>
<p>Und wo bitte steht, dass man die DACL nicht verändenrt soll?</p>
</blockquote>
<p>Ich bin der Meinung das bei MSDN gelesen zu haben, weil die von System zu System unterschiedlich sein können, kann sein das ich es nur falsch verstanden habe!?</p>
<p>Martin Richter schrieb:</p>
<blockquote>
<p>Du gibst nichts an, also gelten Default Rechte.</p>
</blockquote>
<p>Defaultrechte sind auf das System bezogen oder die Defaultrechte des Users den ich angebe, denn letzteres währe das was ich erwartet und gebraucht hätte...</p>
<p>Ich bin noch immer nicht sooo in der Materie Vista und Pro-Coding tut mir leid.<br />
Wenn du einen Link hast der deiner Meinung nach DACL bei MSDN <em>vernünftig</em> erklärt währ ich dankmar <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>Martin Richter schrieb:</p>
<blockquote>
<p>Wie soll man Dir ncoh helfen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f44e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--thumbs_down"
      title=":-1:"
      alt="👎"
    /></p>
</blockquote>
<p>Es tut mir leid wenn ich mich manchmal echt doof anstelle aber ich verstehe manches halt nicht, währ in deinem Blog der erwähnte codesnippet währe ich glaub ich nicht auf sone Frage gekommen <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>
<p>[edit]Wo kann ich den in CreateProcessWithLogonW das attribute mit übergeben?<br />
weil</p>
<pre><code class="language-cpp">int main( void )
{
	SECURITY_DESCRIPTOR mySecDesc;
	SECURITY_ATTRIBUTES mySecAttr;

	InitializeSecurityDescriptor(
		&amp;mySecDesc,						//pointer to the sec.desc.
		SECURITY_DESCRIPTOR_REVISION
	);//initialisieren des neuen security_descriptor
	SetSecurityDescriptorDacl(
		&amp;mySecDesc,						//pointer to the sec.desc.
		TRUE,							//use the last two arguments
		NULL,							//all access to the oject
		FALSE							//specify directly to the user
	);//(er)setzen der DACL(discretionary access control list)
	mySecAttr.nLength = sizeof(SECURITY_ATTRIBUTES);
	mySecAttr.lpSecurityDescriptor = (PVOID)&amp;mySecDesc;
	mySecAttr.bInheritHandle = FALSE;

	myStartInfo.cb = sizeof(STARTUPINFO);
	retValue = 	CreateProcess(
					NULL,			//program name
					&quot;prog.exe&quot;,		//like system( &quot;command&quot; )
					&amp;mySecAttr,			//process security attributes
					NULL,			//primary thread security attributes
					FALSE,			//inherited handles
					0,				//creation flags
					NULL,			//use parents enviroments
					NULL,			//use parents current direction
					&amp;myStartInfo,
					&amp;myProcessInfo
				);
</code></pre>
<p>Funktioniert nicht, immer noch kein Admin(obwohl das sec.attr. dafür doch da ist oder? uiui ich glaub ich bin schon wieder voll am Ziel vorbei...)<br />
Das DACL bestimmt doch was ich tun und lassen darf oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1485135</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1485135</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Wed, 02 Apr 2008 12:46:14 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Fri, 02 May 2008 10:30:45 GMT]]></title><description><![CDATA[<p>Hi all,</p>
<p>das ganze hat sich weitgehend geändert.<br />
Geschrieben wird aus einem Dienst, der im Adminmodus läuft.</p>
<p>Gelesen werden soll aus einem Programm, das mit Userrechten, per autostart läuft.<br />
Sowohl der Dienst, als auch das Programm beenden sich nach lesen/schreiben + einem Zeitintervall.</p>
<p>Das Leseprogramm checkt alle 10sekunden ob in dem Speicherbereich eine 1 steht, der Schreibdienst wartet nach dem schreiben 12sekunden und beendet sich dann.</p>
<p>Das Leseprogramm wirft mir immer GetLastError() 5 zurück. Keine Zugriffsrechte, ich hatte es zwischendrinn aber am laufen, sodass es funktioniert hatte, da war aber kein Dienst im spiel.</p>
<p>So sieht das schrieben aus:</p>
<pre><code class="language-cpp">void schreiben( void )
{
	HANDLE		shareMem = 0;//handle zum Speicher
	LPTSTR		buff; 
	BOOL		retValue = FALSE;

	shareMem = 	CreateFileMapping(
                    INVALID_HANDLE_VALUE,	//geteileter Speicher
                    NULL,					//std security attributes
                    PAGE_READWRITE,			//lese und schreibzugriff
                    0,						//maximale größe des objekts
                    buffSize,				//buffergröße
                    buffName				//buffername
                ); 
	if( NULL != shareMem )
	{
		buff = 	(LPTSTR)MapViewOfFile(		//&quot;verbindungsaufbau&quot; zu shared-mem
					shareMem,				//handle zu dem Speicher
					FILE_MAP_WRITE,			//zugriffsrechte
					0,						//word's high-order offset
					0,						//word's low-order offset
					buffSize				//größe des speichers/zu schreibenden buffers
				);
		if( NULL != buff )
		{
			CopyMemory(                    //kopiert einen speicherbereich zu einem anderen
                (PVOID)buff,            //startadresse des ziel-speicherbereiches
                TEXT(&quot;1&quot;),                //startadresse des source-speicherbereiches
                strlen( TEXT(&quot;1&quot;) )        //größe des source-speicherbereiches
            );

			Sleep( 12000 );

            UnmapViewOfFile( buff );    //&quot;verbindungsabbau&quot; zu shared-mem
            CloseHandle( shareMem ); 
		}
		else
			writeToLog( &quot;MapViewOfFile:\t\t&quot;, GetLastError(), 0 );
	}
	else
	{
		if( 2 != GetLastError() )
			writeToLog( &quot;CreateFileMapping:\t\t&quot;, GetLastError(), 0 );
	}
}
</code></pre>
<p>und so das lesen:</p>
<pre><code class="language-cpp">BOOL lesen( void )
{
	HANDLE		shareMem = 0;//handle zum Speicher
	LPTSTR		buff; 
	BOOL		retValue = FALSE;

	shareMem = 	OpenFileMapping(
					FILE_MAP_READ,			//lesezugriff
					FALSE,					//namen nicht vererben
					buffName				//buffername
				);
	if( NULL != shareMem )
	{
		buff = 	(LPTSTR)MapViewOfFile(		//&quot;verbindungsaufbau&quot; zu shared-mem
					shareMem,				//handle zu dem Speicher
					FILE_MAP_READ,			//zugriffsrechte
					0,						//word's high-order offset
					0,						//word's low-order offset
					buffSize				//größe des speichers/zu schreibenden buffers
				);
		if( NULL != buff )
		{
			if( '1' == buff[0] )
				retValue = TRUE;

			UnmapViewOfFile( buff );	//&quot;verbindungsabbau&quot; zu shared-mem
			CloseHandle( shareMem );
		}
		else
			writeToLog( &quot;MapViewOfFile:\t\t&quot;, GetLastError(), 0 );
	}
	else
	{
		if( 2 != (lastErr = GetLastError()) )
			writeToLog( &quot;OpenFileMapping:\t\t&quot;, GetLastError(), 0 );
	}

	return retValue;
}
</code></pre>
<p>Wieso muss ich mit dem Leseprogramm auch admin sein, ging früher auch ohne!<br />
Was habe ich falsch gemacht? Ich bin gerade nicht in der lage den Fehler zu finden...</p>
<p>Es ist ne weile her, seit ich das letzte mal daran gearbeitet habe, desswegen glaube ich nur noch zu wissen, dass es geklappt hat, denn ich habe mich gefreut xD</p>
<p>Sieht jemadn auf die schnelle einen fehler?<br />
Ich erwarte keinen code, nur einen lösungsansatz, ihr sollt ja schließlich nicht meine Arbeit machen xD</p>
<p>Danke im voraus, ihr seid Spitze <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
<p>[eidt]der Dienst ist nun Systemuser und das Prog normaler user.</p>
<pre><code class="language-cpp">TCHAR buffName[] = TEXT(&quot;Global\\SyDMem&quot;);
</code></pre>
<p>[edit2]Ich habe viel code verloren, war da was mit Security attributes und so?</p>
<p>[edit3]ja es hat gefehlt. danke für die ganze hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1501878</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1501878</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Fri, 02 May 2008 10:30:45 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Fri, 02 May 2008 12:36:58 GMT]]></title><description><![CDATA[<p>Ich sehe nicht ein wieso irgendein Mail Server eine Connection nicht annehmen sollte, nur weil irgendein Programm als lokaler Admin und nicht als Domänenuser eingeloggt ist.<br />
Ansonsten: du kannst ja einfach die SMART Werte in den shared memory Bereich schreiben, und alles andere in das Programm verlagern welches die Mail schicken soll. Dann musst du nixmehr auf Null setzen - schliesslich kann sich ja das Mail-Sende-Programm selbst merken dass es schon eine Mail geschickt hat.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1502036</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1502036</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Fri, 02 May 2008 12:36:58 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Mon, 05 May 2008 07:01:12 GMT]]></title><description><![CDATA[<p>hustbaer schrieb:</p>
<blockquote>
<p>Ich sehe nicht ein wieso irgendein Mail Server eine Connection nicht annehmen sollte, nur weil irgendein Programm als lokaler Admin und nicht als Domänenuser eingeloggt ist.</p>
</blockquote>
<p>Er kennt ganz einfach den benutzer nicht. Dies ist ein Lokaler Mailserver von meiner Firma xD</p>
<p>hustbaer schrieb:</p>
<blockquote>
<p>Ansonsten: du kannst ja einfach die SMART Werte in den shared memory Bereich schreiben, und alles andere in das Programm verlagern welches die Mail schicken soll.</p>
</blockquote>
<p>Ich brauche die SMART Werte an sich garnicht. Ich brauche nur zu wissen wieviele reservierte Sektoren genutzt sind. Sind es mehr als 50% wird eine Standartmail versendet.</p>
<p>hustbaer schrieb:</p>
<blockquote>
<p>Dann musst du nixmehr auf Null setzen - schliesslich kann sich ja das Mail-Sende-Programm selbst merken dass es schon eine Mail geschickt hat.</p>
</blockquote>
<p>Genau das darf man nie machen, setzt du diesen parameter auf NULL brauch das Progi was den Shared-Mem öffnet, die selben Rechte wie das Progi was ihn erstellt.<br />
Ist das Erstell-Progi nun aber mit adminrights bestückt, hast du als norml-user nen Prob.</p>
<p>Habich deine Antwort jetzt falsch verstanden und finde einfach den Verbesserungsvorschlag nicht? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1503422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1503422</guid><dc:creator><![CDATA[lippoliv]]></dc:creator><pubDate>Mon, 05 May 2008 07:01:12 GMT</pubDate></item><item><title><![CDATA[Reply to Kommunikation(shared-mem)Dienst und prog(!admin, kann desswegen shared-mem nich öffnen :( ) on Mon, 05 May 2008 08:21:32 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/17594">@lippoliv</a>:<br />
Ok. Wieso möchtest du denn die Variable im Shared-Memory-Bereich mit 0 überschreiben?<br />
Beantworte mir diese Frage, dann kann ich dir sagen ob das was ich mir vorstelle funktionieren kann oder nicht.</p>
<p>Andere Möglichkeit: nimm eine Datei (ohne Memory-Mapping), und sieh zu dass die eine passende ACL hat. (Kannst du ja einfach über den Explorer reinklicken).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1503460</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1503460</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Mon, 05 May 2008 08:21:32 GMT</pubDate></item></channel></rss>