Fa آی پی کامپیوترهای موجود در شبکه

با سلام خدمت تمام دوستان مخصوصا جناب کینگ عزیز که همیشه بنده را با پاسخهای کاملشون شرمنده کردن

در مراحل ساخت یک برنامه که قراره در بستر شبکه اجرا بشه به مشکلی برخوردم امید دوستان مساعدت بفرمایند
در نسخه سرور برنامه که بر روی رایانه سرور نصب میشه تعدادی بانک اطلاعاتی هم کپی میشه که کامپیوترهای کلاینت قراره بهش وصل بشن و سرویس بگیرن

در حال حاضر برنامه من بر روی کلاینتها به این شکل اجرا میشه که بار اول آی پی سرور را کاربر وارد میکنه و از دفعات بعد برنامه ای پی را دیگه خودش میخونه

حالا سوال بنده اینکه چطوری میتونم کد بزنم تا کلاینتها همون دفعه اول بتونن آی پی سرور را خودشون بخونن؟ چون بستر برنامه محیط بیلدر هستش و خودش چنین امکانی نداره دوستان اگه پلاگینی میشناسن یا بلدن در آدوئیت یا محیط داس چنین چیزی بسازن لطفا راهنمایی کنن

خود بنده نظرم بر اینکه که چون اسم بانک اطلاعاتی مثلا مشتری هستش اگه بشه از طریقی تعداد کامپیوترهای موجود در بستر شبکه را فهمید و به تعدادشون حلقه گذاشت و در هر بار اجرای حلقه یکی از آی پی ها داخلش جستجو بشه فایل مشتری و هر کجا نتیجه جستجو مثبت بود در نتیجه اون کامپیوتر شبکه هستش میشه نتیجه گرفت

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

the_king

مدیرکل انجمن
با سلام خدمت تمام دوستان مخصوصا جناب کینگ عزیز که همیشه بنده را با پاسخهای کاملشون شرمنده کردن

در مراحل ساخت یک برنامه که قراره در بستر شبکه اجرا بشه به مشکلی برخوردم امید دوستان مساعدت بفرمایند
در نسخه سرور برنامه که بر روی رایانه سرور نصب میشه تعدادی بانک اطلاعاتی هم کپی میشه که کامپیوترهای کلاینت قراره بهش وصل بشن و سرویس بگیرن

در حال حاضر برنامه من بر روی کلاینتها به این شکل اجرا میشه که بار اول آی پی سرور را کاربر وارد میکنه و از دفعات بعد برنامه ای پی را دیگه خودش میخونه

حالا سوال بنده اینکه چطوری میتونم کد بزنم تا کلاینتها همون دفعه اول بتونن آی پی سرور را خودشون بخونن؟ چون بستر برنامه محیط بیلدر هستش و خودش چنین امکانی نداره دوستان اگه پلاگینی میشناسن یا بلدن در آدوئیت یا محیط داس چنین چیزی بسازن لطفا راهنمایی کنن

خود بنده نظرم بر اینکه که چون اسم بانک اطلاعاتی مثلا مشتری هستش اگه بشه از طریقی تعداد کامپیوترهای موجود در بستر شبکه را فهمید و به تعدادشون حلقه گذاشت و در هر بار اجرای حلقه یکی از آی پی ها داخلش جستجو بشه فایل مشتری و هر کجا نتیجه جستجو مثبت بود در نتیجه اون کامپیوتر شبکه هستش میشه نتیجه گرفت

حالا کسی میدونه چطوری میشه در محیط داس یا هر محیط دیگه ای تعداد کامپیوترهای موجود در شبکه و آی پی هر کدوم را بدست آورد لطفا راهنمایی بکنه. البته اگه بشه اسم کامپیوترها را هم بدست آورد جواب میده.
با تشکر از همه مخصوصا جناب کینگ عزیز.
کلاینت نمیتونه سرور رو بدون منبع اطلاعاتی پیدا کنه، در هیچ نرم افزاری همچین کاری منطقی نیست که کلاینت بدون اطلاعات اولیه بیاد از بین یه عالمه رنج ip سرورش رو تشخیص بده. ساده ترین کاری که باید بکنید اینه که یا برای سرور نام مشخصی ثبت کنید که همیشه بر اساس اون نام ثابت قابل دسترسی باشه، یا ip ثابتی مثل x.x.x.55 رو همیشه اختصاص بدید به سرور که کلاینت فقط روی اون ip سرور رو پیدا کنه، یا یک فایل مشخص فرضا txt یا xml رو در مسیر مشخصی به اشتراک با دسترسی مستقیم قرار بدید یا بجای شبکه در اینترنت آپلود کنید که کلاینت ها همیشه ip سرور رو از داخل اون فایل دانلودی بخونند. وگرنه منطقی نیست که به کلاینت بگید شبکه رو همینطوری بگرد دنبال سرورت، چک کردن همه ip ها هم روال خیلی کند و نامناسبیه.
 
کلاینت نمیتونه سرور رو بدون منبع اطلاعاتی پیدا کنه، در هیچ نرم افزاری همچین کاری منطقی نیست که کلاینت بدون اطلاعات اولیه بیاد از بین یه عالمه رنج ip سرورش رو تشخیص بده. ساده ترین کاری که باید بکنید اینه که یا برای سرور نام مشخصی ثبت کنید که همیشه بر اساس اون نام ثابت قابل دسترسی باشه، یا ip ثابتی مثل x.x.x.55 رو همیشه اختصاص بدید به سرور که کلاینت فقط روی اون ip سرور رو پیدا کنه، یا یک فایل مشخص فرضا txt یا xml رو در مسیر مشخصی به اشتراک با دسترسی مستقیم قرار بدید یا بجای شبکه در اینترنت آپلود کنید که کلاینت ها همیشه ip سرور رو از داخل اون فایل دانلودی بخونند. وگرنه منطقی نیست که به کلاینت بگید شبکه رو همینطوری بگرد دنبال سرورت، چک کردن همه ip ها هم روال خیلی کند و نامناسبیه.
با سلام و تشکر از جوابتون
پس با این تفاسیر نرم افزارهای تحت شبکه چطوری نسخه های کلاینتش بدون اینکه دفعه اول بهشون آی پی سرور بدی خودشون به سرور متصل میشن؟
با توضیحات شما میمونه یک راه و اونم اینکه نرم افزار بنده وقتی بخش سرورش نصب میشه اسم کامپیوتر را بکنه مثلا مجید و وقتی بخش های کلاینت نصب میشن به شکل زیر دسترسی انجام بشه
\\majid\sharefolder
حالا سوال اینکه شما چه روشی را برای تغییر نام کامپیوتر پیشنهاد میکنید؟ آیا از پرامت داس راهی وجود داره؟لطفا راهنمایی کنید
 

the_king

مدیرکل انجمن
با سلام و تشکر از جوابتون
پس با این تفاسیر نرم افزارهای تحت شبکه چطوری نسخه های کلاینتش بدون اینکه دفعه اول بهشون آی پی سرور بدی خودشون به سرور متصل میشن؟
تا حالا نرم افزار های تحت شبکه زیادی دیدم ولی هیچکدوم بدون بخش تنظیمات کار نمی کردند. شما که نمی خواهید به مشتری بگید باید حتما اسم سیستم تون جعفر باشه وگرنه این نرم افزار کار نمی کنه.
کاربر خودش باید تصمیم بگیره که شبکه اش به چه نحوی تنظیم بشه، ممکنه چند تا شبکه داشته باشه، دلیلی نداره بخاطر یک نرم افزار محدودش کنید، باید قابل تنظیم باشه.
حالا سوال اینکه شما چه روشی را برای تغییر نام کامپیوتر پیشنهاد میکنید؟ آیا از پرامت داس راهی وجود داره؟لطفا راهنمایی کنید
قرار نیست نرم افزار شما نام سیستم رو تفییر بده، این اصلا جزو مسئولیت های نرم افزار شما نیست که برای نام سیستم تصمیمی بگیره. کاربر خودش تصمیم میگیره اسم سیستم اش تو شبکه چی باشه، نه نرم افزار شما. شما در کلاینت ها در تنظیمات نرم افزار خودتون اون نام دلخواه رو ثبت می کنید، نه اینکه نام سیستم سرور رو به نام دلخواه خودتون تغییر بدید. ممکنه در یک شبکه دو تا سرور متفاوت باشه با کلاینت های مخصوص خودشون. هر کدوم از کلاینت ها با تنظیم خودش تصمیم میگیره با کدوم سرور کار کنه. حتی ممکنه روی یک سیستم دو کلاینت متفاوت وجود داشته باشه، هر کدوم در محل نصب متفاوت با تنظیمات متفاوت.
 
تا حالا نرم افزار های تحت شبکه زیادی دیدم ولی هیچکدوم بدون بخش تنظیمات کار نمی کردند. شما که نمی خواهید به مشتری بگید باید حتما اسم سیستم تون جعفر باشه وگرنه این نرم افزار کار نمی کنه.
کاربر خودش باید تصمیم بگیره که شبکه اش به چه نحوی تنظیم بشه، ممکنه چند تا شبکه داشته باشه، دلیلی نداره بخاطر یک نرم افزار محدودش کنید، باید قابل تنظیم باشه.

قرار نیست نرم افزار شما نام سیستم رو تفییر بده، این اصلا جزو مسئولیت های نرم افزار شما نیست که برای نام سیستم تصمیمی بگیره. کاربر خودش تصمیم میگیره اسم سیستم اش تو شبکه چی باشه، نه نرم افزار شما. شما در کلاینت ها در تنظیمات نرم افزار خودتون اون نام دلخواه رو ثبت می کنید، نه اینکه نام سیستم سرور رو به نام دلخواه خودتون تغییر بدید. ممکنه در یک شبکه دو تا سرور متفاوت باشه با کلاینت های مخصوص خودشون. هر کدوم از کلاینت ها با تنظیم خودش تصمیم میگیره با کدوم سرور کار کنه. حتی ممکنه روی یک سیستم دو کلاینت متفاوت وجود داشته باشه، هر کدوم در محل نصب متفاوت با تنظیمات متفاوت.
یعنی بهترین کار اینه که در کلاینتها کاربر آی پی سرور را برای بار اول وارد بکنه نرم افزار ای پی را یکجا ثبت بکنه و از دفعات بعد از اون سرویس بگیره؟
 

the_king

مدیرکل انجمن
یعنی بهترین کار اینه که در کلاینتها کاربر آی پی سرور را برای بار اول وارد بکنه نرم افزار ای پی را یکجا ثبت بکنه و از دفعات بعد از اون سرویس بگیره؟
بله. لزومی هم نداره IP باشه، میتونه با نام سرور باشه.
 

جدیدترین ارسال ها

بالا