דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תוכנה
  3. דרוש פקודה או סקריפט להורדת קובץ משרת FTP

דרוש פקודה או סקריפט להורדת קובץ משרת FTP

מתוזמן נעוץ נעול הועבר תוכנה
4 פוסטים 3 כותבים 198 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • אורייא מנותק
    אורייא מנותק
    אוריי
    כתב ב נערך לאחרונה על ידי
    #1

    בהמשך לנושא הזה: בעיה בקוד vba להורדת קובץ משרת ftp
    אני צריך להוריד קובץ csv שנמצא בשרת ftp בצורה אוטומטית דרך קוד vba
    ניסיתי בנושא הקודם להוריד דרך vba אבל כל מה שניסיתי לא עבד
    @OdedDvir יעץ לי לעשות סקריפט שיופעל על ידי vba (מקווה שזה אפשרי)
    הבעיה הגדולה היא שאני בור ועם הארץ בנושא של הסקריפטים
    ניסיתי לראות בחיפוש בגוגל וראיתי כאן את הקוד הזה

    #ftp server 
    $ftp = "ftp://example.com/" 
    $user = "XX" 
    $pass = "XXX"
    $SetType = "bin"  
    $remotePickupDir = Get-ChildItem 'c:\test' -recurse
    $webclient = New-Object System.Net.WebClient 
    
    $webclient.Credentials = New-Object System.Net.NetworkCredential($user,$pass)  
    foreach($item in $remotePickupDir){ 
        $uri = New-Object System.Uri($ftp+$item.Name) 
        #$webclient.UploadFile($uri,$item.FullName)
        $webclient.DownloadFile($uri,$item.FullName)
    }
    

    הבעיה שהוא מחזיר שגיאה כזו
    34f4d7f1-68e0-466d-9593-83ff17292cce-image.png

    תודה מראש לכל העוזרים ....

    ניתן לפנות אלי גם ב al0548446188@gmail.com
    ותמיד... אבל תמיד תוכלו לשאול אותי ב :) כאן שאלות באקסל

    תגובה 1 תגובה אחרונה
    0
    • S מנותק
      S מנותק
      smk123
      כתב ב נערך לאחרונה על ידי
      #2

      @אוריי אפשר להשתמש בwinscp
      ולהריץ את זה כקובץ bat שקוראים לו מתוך הvba או אפילו ישירות בvba.
      קרדיט ל @אבי שהכיר לי את זה.

      אורייא תגובה 1 תגובה אחרונה
      3
      • אורייא מנותק
        אורייא מנותק
        אוריי
        השיב לsmk123 ב נערך לאחרונה על ידי
        #3

        @smk123
        ותכלס איך כותבים את זה?
        מישהו יכול לעזור לי?

        ניתן לפנות אלי גם ב al0548446188@gmail.com
        ותמיד... אבל תמיד תוכלו לשאול אותי ב :) כאן שאלות באקסל

        תגובה 1 תגובה אחרונה
        0
        • OdedDvirO מנותק
          OdedDvirO מנותק
          OdedDvir
          כתב ב נערך לאחרונה על ידי OdedDvir
          #4

          @אוריי הנה חתיכת קוד שאמורה לעשות את מה שאתה מבקש משורת הפקודה (מבוסס על קוד מאתר מייקרוסופט: מקור בשילוב עם קוד מסטאק: מקור)

          using System;
          using System.IO;
          using System.Net;
          
          namespace FTPDownload
          {
              class Program
              {
                  /// <summary>
                  /// Copies the contents of input to output. Doesn't close either stream.
                  /// </summary>
                  private static void CopyStream(Stream input, Stream output)
                  {
                      byte[] buffer = new byte[8 * 1024];
                      int len;
                      while ((len = input.Read(buffer, 0, buffer.Length)) > 0)
                      {
                          output.Write(buffer, 0, len);
                      }
                  }
          
              static void Main(string[] args)
                  {
                      {
                          // Get the object used to communicate with the server.
                          // and URL from first command line argument
                          FtpWebRequest request = (FtpWebRequest)WebRequest.Create(args[0]);
                          request.Method = WebRequestMethods.Ftp.DownloadFile;
          
                          // Set Credentials from command line arguments
                          request.Credentials = new NetworkCredential(args[1], args[2]);
          
                          FtpWebResponse response = (FtpWebResponse)request.GetResponse();
          
                          Stream responseStream = response.GetResponseStream();
          
                          using (Stream file = File.Create(args[4]))
                          {
                              CopyStream(responseStream, file);
                          }
          
                          Console.WriteLine($"Download Complete, status {response.StatusDescription}");
          
                          response.Close();
                      }
                  }
              }
          }
          
          

          מצ"ב קובץ הריצה המקומפל FTPDownload.exe
          זה אמור לעבוד משורת הפקודה, תעביר לו ארבעה ארגומנטים:

          1. כתובת-FTP
          2. שם משתמש
          3. סיסמה
          4. שם קובץ יעד

          דוגמא:

          FTPDownload ftp://111.222.333.444/Somefile.txt UserName Password C:\Temp\MyFile.txt
          
          תגובה 1 תגובה אחרונה
          4

          בא תתחבר לדף היומי!
          • התחברות

          • אין לך חשבון עדיין? הרשמה

          • התחברו או הירשמו כדי לחפש.
          • פוסט ראשון
            פוסט אחרון
          0
          • דף הבית
          • קטגוריות
          • פוסטים אחרונים
          • משתמשים
          • חיפוש
          • חוקי הפורום