<?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[TIdFTP::List und Windows NT Server (war: IdFTP)]]></title><description><![CDATA[<p>Hallo,</p>
<p>habe schon seit längeren ein kleines FTP Programm geschrieben.</p>
<p>Bis her ging es auch immer Problemlos.</p>
<p>Nun muste ich leider feststellen das aber bei ausführen von List() es bei einem FTP Server des Typen &quot;Windows-NT&quot; zu einen 10060 Socket Error kommt, weiß einer ob es sich hier um einen weitern Bug in der Komponente handelt.<br />
Firewall Probleme und der gleichen habe ich bereits ausgeschloßen.<br />
Unter Unix hat normalerweise die Komponente einen Bug, den man sehr leicht umgehen kann. siehe Code. Nur was mich ich in meinem Fall????</p>
<pre><code class="language-cpp">if(ExtList-&gt;Count &gt; 0){
       try{
          frmMain-&gt;IdFTPJob-&gt;ListResult-&gt;Clear();
          frmMain-&gt;IdFTPJob-&gt;List(FileListBuffer,&quot;&quot;,true);  // second para passed by &quot;&quot;, as error of &quot;*.*&quot; on Unix and third para passed by true, as error with file-ext on Unix too
          frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;LoadList(FileListBuffer);
       }catch(Exception &amp;exception){
          if(exception.Message.Pos(&quot;No files found&quot;) == 0){
            String sMsg = sJobName+&quot;:\n\terror, get files on server - &quot;+exception.Message+&quot;\n&quot;;
            WriteLog(NULL, &quot;joberr.log&quot;, sMsg.c_str(), frmMain-&gt;m_sLogCreateTxt.c_str(), false);
            ::Release(FileList);
            ::Release(FileListBuffer);
            ::Release(ExtList);
            ::Release(ExcludeList);
            return;
          }
       }
       if(frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;Count &gt; 0){
          for(int n = 0; n &lt; frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;Count; n++){
             try{
                 TIdDirItemType ItemType = frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;Items[n]-&gt;ItemType;
                 if(ItemType == ditFile){
                    String sFileName = frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;Items[n]-&gt;FileName;
                    for(int i = 0; i &lt; ExtList-&gt;Count; i++){
                       if(  ( ExtList-&gt;Strings[i] == &quot;*.*&quot; ||
                              wildicmp(ExtList-&gt;Strings[i].c_str(), sFileName.c_str())==true )
                          &amp;&amp; FileList-&gt;IndexOf(sFileName) == -1  ){
                          bool bExclude = false;
                          if(ExcludeList-&gt;Count &gt; 0){
                             for(int y = 0; y &lt; ExcludeList-&gt;Count; y++){
                                 if( wildicmp(ExcludeList-&gt;Strings[y].c_str(), sFileName.c_str())==true
                                     &amp;&amp; ExcludeList-&gt;Strings[y].Pos(&quot;.&quot;)&gt;0 &amp;&amp; sFileName.Pos(&quot;.&quot;)&gt;0  ){
                                     bExclude = true;
                                     break;
                                 }
                             }
                          }
                          if(bExclude == false){
                              FileList-&gt;Add(sFileName);
                          }
                       }
                    }

                 }

......
</code></pre>
<p><strong>Edit:</strong><br />
Bitte aussagekräftige Überschriften wählen!<br />
Und ruhig auch mal die <strong>C++</strong>-Tags benutzen. <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>
]]></description><link>https://www.c-plusplus.net/forum/topic/104892/tidftp-list-und-windows-nt-server-war-idftp</link><generator>RSS for Node</generator><lastBuildDate>Thu, 16 Jul 2026 16:16:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/104892.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 24 Mar 2005 09:43:39 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to TIdFTP::List und Windows NT Server (war: IdFTP) on Thu, 24 Mar 2005 16:53:03 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>habe schon seit längeren ein kleines FTP Programm geschrieben.</p>
<p>Bis her ging es auch immer Problemlos.</p>
<p>Nun muste ich leider feststellen das aber bei ausführen von List() es bei einem FTP Server des Typen &quot;Windows-NT&quot; zu einen 10060 Socket Error kommt, weiß einer ob es sich hier um einen weitern Bug in der Komponente handelt.<br />
Firewall Probleme und der gleichen habe ich bereits ausgeschloßen.<br />
Unter Unix hat normalerweise die Komponente einen Bug, den man sehr leicht umgehen kann. siehe Code. Nur was mich ich in meinem Fall????</p>
<pre><code class="language-cpp">if(ExtList-&gt;Count &gt; 0){
       try{
          frmMain-&gt;IdFTPJob-&gt;ListResult-&gt;Clear();
          frmMain-&gt;IdFTPJob-&gt;List(FileListBuffer,&quot;&quot;,true);  // second para passed by &quot;&quot;, as error of &quot;*.*&quot; on Unix and third para passed by true, as error with file-ext on Unix too
          frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;LoadList(FileListBuffer);
       }catch(Exception &amp;exception){
          if(exception.Message.Pos(&quot;No files found&quot;) == 0){
            String sMsg = sJobName+&quot;:\n\terror, get files on server - &quot;+exception.Message+&quot;\n&quot;;
            WriteLog(NULL, &quot;joberr.log&quot;, sMsg.c_str(), frmMain-&gt;m_sLogCreateTxt.c_str(), false);
            ::Release(FileList);
            ::Release(FileListBuffer);
            ::Release(ExtList);
            ::Release(ExcludeList);
            return;
          }
       }
       if(frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;Count &gt; 0){
          for(int n = 0; n &lt; frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;Count; n++){
             try{
                 TIdDirItemType ItemType = frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;Items[n]-&gt;ItemType;
                 if(ItemType == ditFile){
                    String sFileName = frmMain-&gt;IdFTPJob-&gt;DirectoryListing-&gt;Items[n]-&gt;FileName;
                    for(int i = 0; i &lt; ExtList-&gt;Count; i++){
                       if(  ( ExtList-&gt;Strings[i] == &quot;*.*&quot; ||
                              wildicmp(ExtList-&gt;Strings[i].c_str(), sFileName.c_str())==true )
                          &amp;&amp; FileList-&gt;IndexOf(sFileName) == -1  ){
                          bool bExclude = false;
                          if(ExcludeList-&gt;Count &gt; 0){
                             for(int y = 0; y &lt; ExcludeList-&gt;Count; y++){
                                 if( wildicmp(ExcludeList-&gt;Strings[y].c_str(), sFileName.c_str())==true
                                     &amp;&amp; ExcludeList-&gt;Strings[y].Pos(&quot;.&quot;)&gt;0 &amp;&amp; sFileName.Pos(&quot;.&quot;)&gt;0  ){
                                     bExclude = true;
                                     break;
                                 }
                             }
                          }
                          if(bExclude == false){
                              FileList-&gt;Add(sFileName);
                          }
                       }
                    }

                 }

......
</code></pre>
<p><strong>Edit:</strong><br />
Bitte aussagekräftige Überschriften wählen!<br />
Und ruhig auch mal die <strong>C++</strong>-Tags benutzen. <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>
]]></description><link>https://www.c-plusplus.net/forum/post/751525</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/751525</guid><dc:creator><![CDATA[IcemanX]]></dc:creator><pubDate>Thu, 24 Mar 2005 16:53:03 GMT</pubDate></item><item><title><![CDATA[Reply to TIdFTP::List und Windows NT Server (war: IdFTP) on Thu, 24 Mar 2005 16:58:41 GMT]]></title><description><![CDATA[<p>An welcher Stelle tritt der SocketError auf? Bist du sicher, dass du korrekt angemeldet bist, der Connect also erfolgreich war?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/752004</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/752004</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Thu, 24 Mar 2005 16:58:41 GMT</pubDate></item></channel></rss>