<?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[Maximale übergabeparameter ??]]></title><description><![CDATA[<p>Hallo erstmal,</p>
<p>Meine Frage is ganz Simple gibt es in c++ oder von Windows her eine maximale Anzahl an Übergabeparametern ??</p>
<p>oder ne maximale länge die der insgesamt net haben darf ??</p>
<p>Hier mal mein Code</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;conio.h&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;process.h&gt;

using namespace std;

vector &lt;string&gt; parametervector;
string Druckername = &quot;PS_Drucker1&quot;;
string Servername = &quot;10.4.65.34&quot;;

void lpr()
{
     int antzahl = parametervector.size();

     for(int i=0; i&lt;antzahl; i++)
     {
     string lps_befehl = &quot;lpr -S &quot; + Servername + &quot; -P &quot; + Druckername + &quot; -d &quot; + &quot;\&quot;&quot; + parametervector[i]+ &quot;\&quot;&quot;;
     cout &lt;&lt; &quot;Drucke:   &quot; &lt;&lt; &quot;\&quot;&quot; &lt;&lt; parametervector[i] &lt;&lt; &quot;\&quot;\n\n&quot;;
     system(lps_befehl.c_str());
     }
}

int main (int argc, char* argv[])
{
    int zaehler = 1;

    while (zaehler &lt; argc)
    {
	parametervector.push_back(argv[zaehler]);
    zaehler++;
    }

    if(argc == 1)
    {
    cout &lt;&lt; &quot;Es wurden keine Parameter mitgegeben - Programm Ende&quot; &lt;&lt; endl;
    getch();
    exit (-1);
    }

    lpr();

    return 0;
}
</code></pre>
<p>Dieses Programm ist recht Simple</p>
<p>Mann nimmt sagen wir mal 5 Textdateien markiert sie alle und zieht sie auf meine .exe<br />
mein programm schickt sie dann alle per lpr auf den drucker</p>
<p>Mein Problem ist, wenn ich mehr als ca. 10-15 Dateien Draufschicke kkommt ein Fehler und mein programm startet nicht einmal mehr<br />
Der fehler lautet:</p>
<p>&quot;Auf das angegebene Gerät bzw den Pfad oder die Datei kann nicht zugegriffen werden. Sie verfügen eventuell nicht über ausreichende Berechtigungen, um auf das Element zugreifen zu können&quot;</p>
<p>mit 9 oder so geht es noch ohne probleme und auch perfekt ohne meldung ohne nix so wies soll</p>
<p>PLS HELP</p>
<p>und danke schonma jetzt für hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/192640/maximale-übergabeparameter</link><generator>RSS for Node</generator><lastBuildDate>Sun, 27 Sep 2026 12:29:27 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/192640.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 17 Sep 2007 08:49:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 08:49:18 GMT]]></title><description><![CDATA[<p>Hallo erstmal,</p>
<p>Meine Frage is ganz Simple gibt es in c++ oder von Windows her eine maximale Anzahl an Übergabeparametern ??</p>
<p>oder ne maximale länge die der insgesamt net haben darf ??</p>
<p>Hier mal mein Code</p>
<pre><code>#include &lt;iostream&gt;
#include &lt;conio.h&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;process.h&gt;

using namespace std;

vector &lt;string&gt; parametervector;
string Druckername = &quot;PS_Drucker1&quot;;
string Servername = &quot;10.4.65.34&quot;;

void lpr()
{
     int antzahl = parametervector.size();

     for(int i=0; i&lt;antzahl; i++)
     {
     string lps_befehl = &quot;lpr -S &quot; + Servername + &quot; -P &quot; + Druckername + &quot; -d &quot; + &quot;\&quot;&quot; + parametervector[i]+ &quot;\&quot;&quot;;
     cout &lt;&lt; &quot;Drucke:   &quot; &lt;&lt; &quot;\&quot;&quot; &lt;&lt; parametervector[i] &lt;&lt; &quot;\&quot;\n\n&quot;;
     system(lps_befehl.c_str());
     }
}

int main (int argc, char* argv[])
{
    int zaehler = 1;

    while (zaehler &lt; argc)
    {
	parametervector.push_back(argv[zaehler]);
    zaehler++;
    }

    if(argc == 1)
    {
    cout &lt;&lt; &quot;Es wurden keine Parameter mitgegeben - Programm Ende&quot; &lt;&lt; endl;
    getch();
    exit (-1);
    }

    lpr();

    return 0;
}
</code></pre>
<p>Dieses Programm ist recht Simple</p>
<p>Mann nimmt sagen wir mal 5 Textdateien markiert sie alle und zieht sie auf meine .exe<br />
mein programm schickt sie dann alle per lpr auf den drucker</p>
<p>Mein Problem ist, wenn ich mehr als ca. 10-15 Dateien Draufschicke kkommt ein Fehler und mein programm startet nicht einmal mehr<br />
Der fehler lautet:</p>
<p>&quot;Auf das angegebene Gerät bzw den Pfad oder die Datei kann nicht zugegriffen werden. Sie verfügen eventuell nicht über ausreichende Berechtigungen, um auf das Element zugreifen zu können&quot;</p>
<p>mit 9 oder so geht es noch ohne probleme und auch perfekt ohne meldung ohne nix so wies soll</p>
<p>PLS HELP</p>
<p>und danke schonma jetzt für hilfe</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366747</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366747</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 08:49:18 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 08:52:51 GMT]]></title><description><![CDATA[<p>Du könntest das ganz einfach herausfinden, indem du die Parameter alle ausgeben läßt.</p>
<p>Es gab unter DOS so eine Beschränkung, auf 128 Zeichen oder so, ziemlich heftig. Es würde mich wundern, wenn es die unter heutigen Windosen noch gibt, aber man weiß ja nie.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366751</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366751</guid><dc:creator><![CDATA[Bashar]]></dc:creator><pubDate>Mon, 17 Sep 2007 08:52:51 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 08:56:10 GMT]]></title><description><![CDATA[<p>MatthiasTheOne schrieb:</p>
<blockquote>
<p>...Simple...</p>
</blockquote>
<p>wer ist das denn ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366756</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366756</guid><dc:creator><![CDATA[Simon2]]></dc:creator><pubDate>Mon, 17 Sep 2007 08:56:10 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 09:10:25 GMT]]></title><description><![CDATA[<p>Simon2 schrieb:</p>
<blockquote>
<p>MatthiasTheOne schrieb:</p>
<blockquote>
<p>...Simple...</p>
</blockquote>
<p>wer ist das denn ?</p>
</blockquote>
<p>Sein Programm <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /> :p</p>
<p>91% Fehlerwahrscheinlichkeit: Leerzeichen im Namen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366763</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366763</guid><dc:creator><![CDATA[kilo]]></dc:creator><pubDate>Mon, 17 Sep 2007 09:10:25 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 09:11:54 GMT]]></title><description><![CDATA[<p>Deshalb werden die namen ja mit &quot;...&quot; übergeben das ist nicht das problem</p>
<p>dos kann egal wie viele leerzeichen und alles verarbeiten solange sie in &quot; stehen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366764</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366764</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 09:11:54 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 09:56:00 GMT]]></title><description><![CDATA[<p>und Bashar</p>
<p>ich kann auch keine ausgabe machen</p>
<p>wen ich die lpr();</p>
<p>funktion auskommentiere und ne ausgabe schreib nur mal die parameter ausgeben dann tut das zwar aber auch nur solange ich nicht mehr als 10 dateien draufziehe</p>
<p>wenn ich mehr wie 10 draufziehe kommt der selbe fehler und das programm startet nicht einmal</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366791</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366791</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 09:56:00 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 10:19:58 GMT]]></title><description><![CDATA[<p>Ermittel mal die Länge der gesamten Kommandozeile die du ausführst und schau mal ab wievielen Zeichen es nicht mehr geht.</p>
<p>Habs bei mir eben mal getestet und eine Kommandozeile mit ~6000Zeichen Länge (1000 Parameter) waren kein Problem.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366806</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366806</guid><dc:creator><![CDATA[lolz]]></dc:creator><pubDate>Mon, 17 Sep 2007 10:19:58 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 10:32:15 GMT]]></title><description><![CDATA[<p>über komandozeile selbst hab ich es auch schonmal mit 100000 getestet ging auch dauerte ne ewigkeit aber ging</p>
<p>aber über so ein programm das mit argv[] die parameter bekommt gehts bei mir halt net</p>
<p>kannst du mal mein programm compilieren und testen ob du da drauf auch mehr als 20 draufgezogen bekommst</p>
<p>men ziel ist halt ich muss 272 dateien auf einmal auf das ding werfen können im ende und alle 272 sollen dann gedruckt werden und das geht irgendwie 0</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366810</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366810</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 10:32:15 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 10:51:39 GMT]]></title><description><![CDATA[<p>Ich denke mal, wenn Windows nicht einmal dein Programm startet bei zu vielen Parametern, kannst du schwerlich was dagegen tun..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366820</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366820</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Mon, 17 Sep 2007 10:51:39 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 10:53:13 GMT]]></title><description><![CDATA[<p>MatthiasTheOne schrieb:</p>
<blockquote>
<p>und Bashar</p>
<p>ich kann auch keine ausgabe machen</p>
</blockquote>
<p>Warum? Da oben ist doch der Code.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366821</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366821</guid><dc:creator><![CDATA[kilo]]></dc:creator><pubDate>Mon, 17 Sep 2007 10:53:13 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 11:33:30 GMT]]></title><description><![CDATA[<blockquote>
<p>über komandozeile selbst hab ich es auch schonmal mit 100000 getestet ging auch dauerte ne ewigkeit aber ging</p>
<p>aber über so ein programm das mit argv[] die parameter bekommt gehts bei mir halt net</p>
</blockquote>
<p>Ehm und du weißt schon das die Kommandozeilenargumente in &amp;argv[1] gespeichert werden?</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &lt;string&gt;
#include &lt;vector&gt;
#include &lt;cstdlib&gt;
#include &lt;sstream&gt;

void print_vector(const std::vector&lt;std::string&gt;&amp;, const std::string&amp;, const std::string&amp;)

int main (int argc, char* argv[])
{
	if (argc == 0) 
	{
		std::clog &lt;&lt; &quot;Keine Parameter übergeben!&quot; &lt;&lt; std::endl;
		std::cin.get();
		return 0;
	}
	std::vector&lt;std::string&gt; parameter(&amp;argv[1], &amp;argv[argc]);
	print_vector(parameter, &quot;PS_Drucker1&quot;, &quot;010.004.065.034&quot;);
	std::cin.get();
}

void print_vector(const std::vector&lt;std::string&gt;&amp; data, const std::string&amp; device, const std::string&amp; host)
{
	for (std::vector&lt;std::string&gt;::const_iterator it = data.begin(); it != data.end(); ++it)
	{
		std::clog &lt;&lt; &quot;\&quot;&quot; &lt;&lt; (*it) &lt;&lt; &quot;\&quot; wird gedruckt ...&quot; &lt;&lt; std::endl;
		std::ostringstream ss;
		ss &lt;&lt; &quot;lpr -S&quot; &lt;&lt; host &lt;&lt; &quot; -P &quot; &lt;&lt; device &lt;&lt; &quot; -d \&quot;&quot; &lt;&lt; (*it) &lt;&lt; &quot;\&quot;&quot;;
		std::system(ss.str().c_str());
	}
}
</code></pre>
<p>... std::vector hat auch verschiedene Konstruktoren ... globale Variablen sind doof und böse ^^ system ist im Namespace std ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366854</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366854</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Mon, 17 Sep 2007 11:33:30 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 12:14:52 GMT]]></title><description><![CDATA[<p>Ja aber wenn ich mein programm mit 30 parametern starten mag und die nur ausgeben mag, dann startet es ja auch schon nicht</p>
<p>es ist egal ob ich den lpr ausfhren mag oder ob ichs program umschreibe, und sage geb alle parameter aus</p>
<p>wen ich 30 dateien auf eine exe ziehen kommt der fehler und tschüss</p>
<p>Ich hoffe noch jemanden zu finden der mir wenigstens meien theorie bestätigen kann, das ddes am windoof liegt oder an der komandozeile oder am befehl selbst ^^</p>
<p>Danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366898</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366898</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 12:14:52 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 12:18:21 GMT]]></title><description><![CDATA[<p>ok sry hab den letzten beitrag ghier auf 2ter page net gelesen ^^ ich schaus mir nachher mal an <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>
<p>dank dior jedenfalls 4 hilfe ^^</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366900</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366900</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 12:18:21 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 12:22:13 GMT]]></title><description><![CDATA[<p>Wenns garnicht startet, dann kannst du es so wie ZIP mit ner SendTo Extension machen, da kann man mehrere Dateien markieren und als ZIP verpacken lassen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366905</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366905</guid><dc:creator><![CDATA[kilo]]></dc:creator><pubDate>Mon, 17 Sep 2007 12:22:13 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 12:31:46 GMT]]></title><description><![CDATA[<p>ja ok mit folgendem code gehts nun mus ich zwar noch bissel vereinfachen da ich so meine programme eigentlich net schreibe <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>
<pre><code>#include &lt;iostream&gt; 
#include &lt;string&gt; 
#include &lt;vector&gt; 
#include &lt;cstdlib&gt; 
#include &lt;sstream&gt; 

void print_vector(const std::vector&lt;std::string&gt;&amp; data, const std::string&amp; device, const std::string&amp; host) 
{ 
    for (std::vector&lt;std::string&gt;::const_iterator it = data.begin(); it != data.end(); ++it) 
    { 
        std::clog &lt;&lt; &quot;\&quot;&quot; &lt;&lt; (*it) &lt;&lt; &quot;\&quot; wird gedruckt ...&quot; &lt;&lt; std::endl; 
        std::ostringstream ss; 
        ss &lt;&lt; &quot;lpr -S&quot; &lt;&lt; host &lt;&lt; &quot; -P &quot; &lt;&lt; device &lt;&lt; &quot; -d \&quot;&quot; &lt;&lt; (*it) &lt;&lt; &quot;\&quot;&quot;; 
        std::system(ss.str().c_str()); 
    } 
}

int main (int argc, char* argv[]) 
{ 
    if (argc == 1) 
    { 
        std::clog &lt;&lt; &quot;Keine Parameter übergeben!&quot; &lt;&lt; std::endl; 
        std::cin.get(); 
        return 0; 
    } 
    std::vector&lt;std::string&gt; parameter(&amp;argv[1], &amp;argv[argc]); 
    print_vector(parameter, &quot;hold_PS_SPS2&quot;, &quot;10.53.34.34&quot;); 
    std::cin.get(); 
}
</code></pre>
<p>aber das programm läuft</p>
<p>ich hab zwar nun wieder nen lpr fehler das man imer nur 11 gesendet bekommt und lpr dan 1minute timeout bekommt bevor er weiter macht mit 12.... aber das liegt ja nun nicht mehr am programm sondern am lpr befehl</p>
<p>kennt sich da mit wer aus von euch ???</p>
<p>Lpr macht immer nur 11 dateien danach is ne minute pause da steht das programm und danach machts wieder elf also bis 22 hoch dann stehts wieder und so weiter</p>
<p>liegt das an meinem serverdrucker das der irgendwann overload meldet oder liegt das am befehl lpr ?? danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366916</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366916</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 12:31:46 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 12:36:29 GMT]]></title><description><![CDATA[<p>Nachricht @ (D)Evil<br />
kannst du mir vieleicht erklären wie ich von meinem code auf deinen komme ^^</p>
<p>Ich kenn mich in c++ eigentlich gut aus aber solche befehle wie</p>
<blockquote>
<p>clog &lt;&lt; &quot;\&quot;&quot; &lt;&lt; (*it) &lt;&lt; &quot;\&quot; wird gedruckt ...&quot; &lt;&lt; endl;</p>
</blockquote>
<p>oder</p>
<blockquote>
<p>void print_vector(const vector&lt;string&gt;&amp; data, const string&amp; device, const string&amp; host)</p>
</blockquote>
<p>hab ich jetzt noch net benuttz ^^</p>
<p>könntest du mir den grade eben geposteten code oben der große block von dir vieleicht mal ändern bissel erklären ^^</p>
<p>wäre nett ^^ sitze hier grade vor nem funktionierendem programm aber ka wies geht ^^</p>
<p>danke</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366921</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366921</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 12:36:29 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 12:42:33 GMT]]></title><description><![CDATA[<p><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="😕"
    /> Wie soll den das eine Programm funktionieren und das andere nicht, wenn <strong>Windows</strong> ein Problem mit zuvielen Parametern hat? Habs gerade mal mit einer leeren main funktion versucht und die kann auch nicht gestartet werden, wenn man zuviele Dateien drauf dropt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366928</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366928</guid><dc:creator><![CDATA[kilo]]></dc:creator><pubDate>Mon, 17 Sep 2007 12:42:33 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 13:09:05 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">/********* print_vector :: functions ********/
/* parameter:								*/
/*	- data:		vector of strings to print	*/
/*	- device:	string containing device	*/
/*	-			name						*/
/*	- host:		string containing host id	*/
/* return:									*/
/*	- void:		no error codes				*/
/* describtion:								*/
/*	use system application lpt to print		*/
/*	the content of 'data' on printer		*/
/*	'device'								*/
/********************************************/

void print_vector(const std::vector&lt;std::string&gt;&amp; data, const std::string&amp; device, const std::string&amp; host) 
		/* Du übergibst der Funktion eine konstante(da du nichts an den Werten änderst) Referenz eines		*/
		/* Vektors von std::strings, eine konstante Referenz auf einen std::string der den Drucker enthält	*/
		/* und noch eine konstante Referenz auf einen std::string die die Host-IP enthält.					*/
{
    for (std::vector&lt;std::string&gt;::const_iterator it = data.begin(); it != data.end(); ++it) 
		// Iterator-Pattern; konstanter Wert da *it nicht verändert wird.
    {
        std::clog &lt;&lt; &quot;\&quot;&quot; &lt;&lt; (*it) &lt;&lt; &quot;\&quot; wird gedruckt ...&quot; &lt;&lt; std::endl;	/* std::clog(standard stream std::cout).	*/
																			/* Kann auf einen filestream odg.			*/
																			/* umgeleitet werden. std::clog ist zum		*/
																			/* mitschreiben von Programmabläufen.		*/
        std::ostringstream ss;
        ss &lt;&lt; &quot;lpr -S&quot; &lt;&lt; host &lt;&lt; &quot; -P &quot; &lt;&lt; device &lt;&lt; &quot; -d \&quot;&quot; &lt;&lt; (*it) &lt;&lt; &quot;\&quot;&quot;;	/* entspricht deinem zusammefügen	*/
																					/* durch operator+					*/ 
        std::system(ss.str().c_str());
    }
}

int main (int argc, char* argv[])
{
    if (argc &lt; 1)															/* Es ist in argv nur der Programmpfad		*/
																			/* enthalten! Das nützt uns nichts.			*/
    {
        std::cerr &lt;&lt; &quot;Keine Parameter übergeben!&quot; &lt;&lt; std::endl;				/* std::cerr für Fehlermeldungen gedacht.	*/
        std::cin.get();														/* std::cin.get() ließt ein Zeichen ein		*/
        return -1;															/* -1: Es ist ein Fehler aufgetreten		*/
    }
    std::vector&lt;std::string&gt; parameter(&amp;argv[1], &amp;argv[argc]);				/* std::vector hat einen Konstruktor		*/
																			/* Iterator begin, Iterator end.			*/
    print_vector(parameter, &quot;hold_PS_SPS2&quot;, &quot;10.53.34.34&quot;);					/* Daten an print_vector übergeben			*/
    std::cin.get();															/* Auf Eingabe warten						*/
}
</code></pre>
<p>... sollte als Erklärung genügen ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366963</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366963</guid><dc:creator><![CDATA[*D*Evil]]></dc:creator><pubDate>Mon, 17 Sep 2007 13:09:05 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 13:21:25 GMT]]></title><description><![CDATA[<p>also an kilo<br />
wenn ich das neue nehm und es mit 150 dateien bewerfe geht es<br />
das alte ging net</p>
<p>weiß zwar ent warums bei dir net geht aber bei mir arbeitet der alle 150 dateien ab. zwar immer im doofen 11er schritten und mit 1min pause zazwischen aber er amchts</p>
<p>und an devil danke für die erklärungen ich les es mir gleioch mal durch</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366975</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366975</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 13:21:25 GMT</pubDate></item><item><title><![CDATA[Reply to Maximale übergabeparameter ?? on Mon, 17 Sep 2007 13:32:02 GMT]]></title><description><![CDATA[<p>na lol</p>
<p>150 gehen aber wenn ich nun 270 draufhaue gehts auch wieder net <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>oh meno was denn windoof für ne scheis erfindung echt</p>
<p>des nerft mich grade total das man net einfach so viee übergeben kann wie man will naja</p>
<p>Danke erstmal an alle die hierbei geholfen haben war sehr nett</p>
<p>TREAD CLOSE PLS</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1366985</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1366985</guid><dc:creator><![CDATA[MatthiasTheOne]]></dc:creator><pubDate>Mon, 17 Sep 2007 13:32:02 GMT</pubDate></item></channel></rss>