صفحه 3 از 3 اولاول 123
نمایش نتایج 81 تا 88 از 88

نام تاپیک: برنامه نویسی شبکه

  1. #81

    نقل قول: برنامه نویسی شبکه

    با سلام .
    جناب بی نیاز به فرموده شما :
    "علاوه بر نوشتن کدها بايد روي ديتابيس در طراح ديتابيس کليک راست کنيد و گزينه Properties ر ا انتخاب و سپس گزينه Set Events On را انتخاب کنيد."
    عمل کردم و مشکلم حل شد ، خیلی ممنونم .

    ولی یک ایراد اینکه کاربران میتوانند بدون بازکردن دیتابیس با دستور Free Table جداول را از بانک بیرون کشیده و محتویات آنرا ببینند و صد البته کار من را زیاد کنند چون باید دوباره به دیتابیس اضافه اش کنم .
    آیا راهی برای جلوگیری از اینمورد وجود دارد ؟

  2. #82
    کاربر دائمی
    تاریخ عضویت
    مهر 1388
    محل زندگی
    دامغان
    پست
    570

    نقل قول: برنامه نویسی شبکه

    با سلام-اگه جداول در server رو use کنی فرمانهای free table و remove table امكان اجرا ندارند.البته اگر روی سرعت برنامه تاثیری نداشته باشدکه خوب باید تست بشه.

  3. #83

    نقل قول: برنامه نویسی شبکه

    با سلام
    اگه راهنمايي در مورد پست 80 سه تا پست قبل از اين داريد بفرماييد در مورد باز كردان جداول در شبكه.
    در محيط شبكه باز كردن ديتاباس زياد طول ميكشه اما جداول كمتر . درايوي را شرينگ كرده ايم و با دستور
    OPEN DATABASE N:\MASIR\MYDATA.DBC انرا باز ميكنيم در اين مورد سرعت باز كردن ديتا بايس كمي كند است N همان درايو شبكه است اما اگر از دستور OPEN DATABASE \\SERVER\MASIR\MYDATABASE.DBC
    باز هم سرعت پايين است ولي كمي بهتر است لطفا راهنمايي كنيد

  4. #84
    کاربر دائمی
    تاریخ عضویت
    مهر 1388
    محل زندگی
    دامغان
    پست
    570

    نقل قول: برنامه نویسی شبکه

    سلام-اگه امکانش هست بجای ip از نام server استفاده کنیدودر برنامه اصلی پوشه default رو پوشه share شده قرار بدید.البته من ابتدا در سرور یک user به پوشه share شده اختصاص میدم و در برنامه اصلی با فرمان net use به پوشه در سرور connect میشم(با username و password تعریف شده برای user )

    -کلا به نظر من بهتره از sql server استفاده کنید.فقط کافیه اطلاعات خیلی کمی از sqlserver بدونی و با استفاده از remote view براحتی (تا حد زیادی مانند جداول خود فاکس)باهاش کار کنید.به هر حال اگه دوست داشتید میتونم اطلاعات کاملتری بهتون بدم.

  5. #85
    کاربر دائمی آواتار Esikhoob
    تاریخ عضویت
    شهریور 1385
    محل زندگی
    Tehran
    پست
    277

    نقل قول: برنامه نویسی شبکه

    نقل قول نوشته شده توسط gh_khajehzade مشاهده تاپیک
    با سلام-اگه جداول در server رو use کنی فرمانهای free table و remove table امكان اجرا ندارند.البته اگر روی سرعت برنامه تاثیری نداشته باشدکه خوب باید تست بشه.
    - در مورد سرعت باید بگویم طبق امتحانی که کردم وقتی یک نفر table ی را با یک آدرس شبکه use میکند سرعت SEEK و ذخیره اطاعات تا حدود 10 برابر سریعتر است از موقعی که یک نفر دیگر هم آن TABLE را فقط USE کند.
    این مسئله کاملا به WINDOWS مربوط میشود ، این را از اینجا میگویم که در HELP ویژوال فاکس پرو به هیچوجه در این مورد صحبتی نشده ، و بالعکس WINDOWS در مورد روش برخورد با کسانی که از فایل share شده در شبکه استفاده میکنند نوشته هایی دارد که این موضوع را تایید میکند.
    WINDOWS که مسئول فایلهاست ، وقتی برنامه ای فایلی را از یک آدرس شبکه باز میکند ، به Windows Client اجازه میدهد که تغییرات را مرتبا بر روی دیسک SERVER ننویسد و نخواند بلکه آنها را یکبار برای همیشه روی کامپیوتر خودش CACHE کند، دقت کنید که روح آن برنامه از این موضوع خبر ندارد.
    به محض اینکه برنامه دیگری از یک کامپیوتر دیگر همان فایل را خواست باز کند ، WINDOWS server به WINDOWS client که برنامه اول روی آن اجرا بود میگوید که اطلاعات را بر روی دیسک server بنویس و CACHE بازی دیگه تموم ، حالا همه باید مستقیم با دیسک SERVER کار کنند چون دیگر تنها نیستی. (این قضیه درست است چون از دید همه ، برنامه اول فایل روی SERVER را تغییر داده ، در حالی که تغییر در CACHE با تغییر فایل در دیسک SERVER متفاوت است)
    همین موقع است که سرعت نفر اول کم میشود.
    البته این کم شدن سرعت موقعی محسوس هست که بانکها خیلی حجیم باشد یا سرعت شبکه خیلی کم باشد چون مثلا اگر هر دستور replace ،زمان 0.0004 ثانیه طول بکشد ، و شما 100 بار این دستور را در اون پروسه ای که در حال اجرا شدن است داشته باشید کلا میشود 0.04 ثانیه که اگر این بحثی که بالا کردم 10 برابر هم سرعت را کم کند ، سرعت اجرای برنامه شما میشود 0.4 ثانیه که باز قابل حس نیست.

    این موضوع را وقتی کشف کردم برایم خیلی جالب بود ، وقتی دیدم دوست دیگری به چیزی مانند این اشاره کرده ، خواستم کشف خود را اینجا بنویسم.

  6. #86

    نقل قول: برنامه نویسی شبکه

    با سلام
    منظور شما اينه كه جداول را هم با ادرس سرور باز كنيم ميشه توضيح بيشتري بدهيد و مثال بزنيد كه
    1-چگونه ديتاباس را باز ميكني
    2- چطور جداول را باز ميكني
    3- سرور را چگونه تنظيم ميكني ايا پوشه را شرينگ ميكني يا درايوي را شرينگ ميكني
    4-ايا حجم درايو شرينگ شده اگر زياد باشد در كندي سرعت نقش دارد
    5-بعد ار اينها در فرمها از چه سبكي استفاده ميكني مثلا از بافر يا از دستورات SQL , ...
    اگه براتون ممكنه مثال هم بزنيد با تشكر فراوان

  7. #87
    کاربر دائمی آواتار Esikhoob
    تاریخ عضویت
    شهریور 1385
    محل زندگی
    Tehran
    پست
    277

    نقل قول: برنامه نویسی شبکه

    نه ،منظور من اصلا این نیست ، من در مورد موضوعات کاملا متفاوتی صحبت کردم.

    من کلا در مورد لایه های زیرین سیستم عامل Windows و موضوع CACHE شدن فایل میخواستم توضیح بدهم و منظور من از "یک نفر table ی را با یک آدرس شبکه use میکند" این بود که میخواستم CACHE شدن فایلها هنگامی که از شبکه خوانده شده اند را توضیح بدهم.(در مقابل خوانده شدن از هارد دیسک کامپیوتر )


    اما در مورد سئولات شما که موضوع دیگریست ، تنظیماتی که برای نرم افزار خودمان اجرا شده است را به شما میگویم که ممکن است بهینه نباشد (این یک برنامه قدیمی است که من ننوشتم و فقط پشتیبانی آن را بر عهده دارم):
    1-

    OPEN DATABASE &p_prim_dir\account_store
    .
    .
    .
    Close DataBase

    که "p_prim_dir="Q:\BANKS
    ما برای بازکردن دیتابیس هایمان از dataenvironment استفاده نکرده ایم ، و در هر پروسه از برنامه بانکها را همان جا اول باز میکنیم و بعد میبندیم ، برنامه نویسش معتقد بود که بانکها نباید همیشه باز باشند در اینجا ممکن است انتقادی باشد که نمونه های برنامه VFP اکثرا بانکها را در dataenvironment باز میکنند تا برنامه نویسی راحتتر شود.
    اما به نظرم این کاری که ما کردیم جلوی چند اشکال را میگیرد ، احتمال خراب شدن بانکها کمتر میشود و همینطور یک خوبی دیگر هم دارد که صحت اطلاعات بهتر میشود که مربوط به اون قضیه ایست که در پست قبل گفتم .

    2-
    USE t821100r1


    3-ما یک پوشه به نام PROGRAMS را در سرور share میکنیم و از کامپیوتر های client این فولدر MAP میشود به Q:

    4-فکر نمی کنم.

    5-همان طور که از 1 و2 معلوم است ما از همان DBF های VFP استفاده میکنیم. و در برنامه یمان از Buffering استفاده نکردیم . چون برنامه نویسمان ، برنامه نویس FoxPro DOS بود و اصلا نمیدانستند که Buffering هم وجود دارد ، اما بالاخره برنامه امان با اشکالاتی کار میکند . من خودم از SELECT SQL جدیدا به وفور استفاده کرده ام ولی قبل از من کل برنامه ما حتی یک SELECT SQL هم نداشت.(از بقیه دستورات SQL استفاده نمیکنیم)

  8. #88
    کاربر دائمی
    تاریخ عضویت
    مهر 1388
    محل زندگی
    دامغان
    پست
    570

    نقل قول: برنامه نویسی شبکه

    سلام به اساتید عزیز-من از برنامه زیر برای اتصال به پوشه share شده استفاده میکنم که بدون map drive
    انجام میشه.البته همانطور که مشخصه نام سرور رو با استفاده از sqlserver میگیرم.که هم با فرمانهای
    net use خود windows ميشه گرفت(فرمانش یادم نیست تو help هست)وهم اینکه نام رو تو بر نامه وارد کنیم.
    فایل های ضمیمه فایل های ضمیمه

صفحه 3 از 3 اولاول 123

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •