تبلیغات :
آکوستیک ، فوم شانه تخم مرغی، صداگیر ماینر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 1 از 2 12 آخرآخر
نمايش نتايج 1 به 10 از 15

نام تاپيک: ارسال فایل با Winsock

  1. #1
    در آغاز فعالیت
    تاريخ عضويت
    Dec 2008
    پست ها
    7

    پيش فرض ارسال فایل با Winsock

    سلام ;
    کسي ميتونه اين برنامه را طوري اصلاح کنه که وقتي فايل از طرف Client ارسال مي شود يک چيزي با اول يا آخر فايل ارسال شده اضافه بشه ، مثلاً IP آن Client يا پورتي که با انکنه متصل شده.
    یا اگه فلان ip کانکت شد فایل مربوطه را در یک فولدر مشخصی ذخیره
    چون مشکلش اينه که زماني که 2 يا چند Client باهم يک فايل هم اسم و مشابه ارسال کنند برنامه Error داده و بسته ميشه .؟
    ممنون ميشم اگه کسي کمکم کنه .
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

  2. #2
    اگه نباشه جاش خالی می مونه sosani2007's Avatar
    تاريخ عضويت
    Aug 2012
    محل سكونت
    گناباد
    پست ها
    293

    پيش فرض

    سلام ;
    کسي ميتونه اين برنامه را طوري اصلاح کنه که وقتي فايل از طرف Client ارسال مي شود يک چيزي با اول يا آخر فايل ارسال شده اضافه بشه ، مثلاً IP آن Client يا پورتي که با انکنه متصل شده.
    یا اگه فلان ip کانکت شد فایل مربوطه را در یک فولدر مشخصی ذخیره
    چون مشکلش اينه که زماني که 2 يا چند Client باهم يک فايل هم اسم و مشابه ارسال کنند برنامه Error داده و بسته ميشه .؟
    ممنون ميشم اگه کسي کمکم کنه .
    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
    شما می تونید از توابع رشته ای Len و Mid استفاده کنید باور کن مشکلت حل می شه

  3. #3
    در آغاز فعالیت
    تاريخ عضويت
    Dec 2008
    پست ها
    7

    پيش فرض

    ممکنه توی سورس به من نشون بدید ؟

  4. #4
    اگه نباشه جاش خالی می مونه sosani2007's Avatar
    تاريخ عضويت
    Aug 2012
    محل سكونت
    گناباد
    پست ها
    293

    پيش فرض

    من این رو خیلی خلاصه می گم

    [php]
    winsock1.senddata("Amir")


    این دستور بالا مال سیستم کلاینت بود
    حالا این دستور مال سیستم سرور هستش
    getdata,a
    من توی گت دیتا شک دارم ولی یک همچین شکلی به نظرم باید داشته باشه
    winsock1.getdate,a
    for i=1to len(a)
    if mid(a,i,1)=a then
    msgbox a
    else
    msgbox"ERR"
    ببخشید من خیلی خلاصه گفتم اگر شما سورستون رو بهم بدید می تونم کاری کنم

  5. این کاربر از sosani2007 بخاطر این مطلب مفید تشکر کرده است


  6. #5
    در آغاز فعالیت
    تاريخ عضويت
    Dec 2008
    پست ها
    7

    پيش فرض

    من این رو خیلی خلاصه می گم

    [php]
    winsock1.senddata("Amir")


    این دستور بالا مال سیستم کلاینت بود
    حالا این دستور مال سیستم سرور هستش
    getdata,a
    من توی گت دیتا شک دارم ولی یک همچین شکلی به نظرم باید داشته باشه
    winsock1.getdate,a
    for i=1to len(a)
    if mid(a,i,1)=a then
    msgbox a
    else
    msgbox"ERR"
    ببخشید من خیلی خلاصه گفتم اگر شما سورستون رو بهم بدید می تونم کاری کنم
    ♥♥ عذر می خوام ولی من سورس را بالا گذاشتم [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] میتونید دو تا خروجی client ازش بگیرید و یک فایل هم نام را از هر دو باهم ارسال کنید متوجه میشید .

  7. #6
    مدیر انجمن برنامه نویسی Payman_62's Avatar
    تاريخ عضويت
    Dec 2005
    محل سكونت
    تهران
    پست ها
    2,445

    پيش فرض

    سلام.
    شما فایلت رو open کن. کل اطلاعاتش رو بخون و واسه طرف مقابل ارسال کن. خود winsock ارسال تکه تکه دیتا رو مدیریت میکنه.
    در اون سمت پس از این که دریافت اطلاعات تموم شد میتونی اطلاعات رو در یه فایل ذخیره کنی.

  8. این کاربر از Payman_62 بخاطر این مطلب مفید تشکر کرده است


  9. #7
    اگه نباشه جاش خالی می مونه samasara's Avatar
    تاريخ عضويت
    Jul 2012
    پست ها
    386

    پيش فرض

    برنامه ای که نوشتی واقعا قشنگ بود و ایول داری !!!!
    می تونی با دستور Form1.Winsock1.LocalIP ای پی رو بگیری و قبل از ارسال فایل اول آی پی رو بفرستی !!! در سر سرور هم باید یک متغیر برای در یافت آی پی و یک دیگه برای ذخیره اون و آی پی دریافتی درست کنی .... حالا یک آدرس ذخیره شونده برای اون آی پی بزار و ادامه ی ماجرا... حالا اگر دوباره همون آی رو در یافت کردی داخل فولدر قبل ذخیره کن وگرنه در آدرس دیگه ای ذخیره رو انجام بده.. این جوری برای 2 کلایت مشکلت حل میشه اما برای کلایت ها بیشتر باید هر آی پی جدید رو داخل برای نامه با یک متغیر منحصر به فرد(شاید یک آرایه ی رشته ای) و یک آدرس جدید در نظر بگیری...

  10. این کاربر از samasara بخاطر این مطلب مفید تشکر کرده است


  11. #8
    اگه نباشه جاش خالی می مونه samasara's Avatar
    تاريخ عضويت
    Jul 2012
    پست ها
    386

    پيش فرض

    راستی یادم رفت بگم باید برنامه ای کلایت روی سستم های جدا باشه چون ای پی سیستم خودت همواره یکی خواهد بود .... پی برای حل این مشکل هم می تونی بجای آی پی یک نشانه به هر یک از برنامه های کلایت بدی مثلا برنامه ی کلایت 1 در ابتدا عبارت Cli1 رو به جا آی پ می فرسته... این جوری دیگه مشکلی پیش نمی یاد...

  12. #9
    اگه نباشه جاش خالی می مونه sosani2007's Avatar
    تاريخ عضويت
    Aug 2012
    محل سكونت
    گناباد
    پست ها
    293

    پيش فرض

    شما می تونی از API های آماده برای پیدا کردن ای پی استفاده کنی همچین کمپنتی وجود داره چون من خودم قبلا همچین برنامه ای رو نوشتم

  13. #10
    در آغاز فعالیت
    تاريخ عضويت
    Dec 2008
    پست ها
    7

    پيش فرض

    دوستان از نظرات ارزشمندتون ممنونم . ولی هیچ کدوم از این راهها منطقی نیست.
    من فعلاً مشکلم را حل کردم به این صورت که تعداد 30 تا Client و IP همه اونها را Static قرار دادم و داخل برنامه شرط گذاشتم که اگه فلان IP فایل ارسال کرد داخل یک Folder خاص ذخیره بشه .

    اما اگه شما راه بهتری سراغ دارید ، باز م ممنون میشم کمکم کنید.

  14. این کاربر از kholous بخاطر این مطلب مفید تشکر کرده است


صفحه 1 از 2 12 آخرآخر

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •