PDA

View Full Version : سوال: اجراي ميانبر برنامه #C از داخل سرور بر روي چند كلاينت



Mahbadgroup
یک شنبه 16 اسفند 1388, 07:45 صبح
سلام
من يك برنامه سي شارپ دارم كه مي خواهم روي چند سيستم نصب كنم اما چون فايل اجرايي آن مدام تغيير مي كند مي خواهم فايل اصلي يك جا باشد و روي سيستم هاي كلاينت فقط ميانبر ايجاد گردد.
اولا اين روش درست است؟
دوما چون داخل برنامه از يك dll استفاده كردم كه عمليات مربوط به باز كردن بانك SQl و افزودن،حذف از بانك را انجام مي دهد در زمان اجراي ميانبر با خطا مواجه مي شود كه مربوط به باز كردن اين dll است.چگونه ميانبر مناسب را ايجاد كنم؟
در ضمن روي سيستم هاي كلاينت Framework به صورت كامل يك بار نصب شده است.

M.YasPro
یک شنبه 16 اسفند 1388, 08:04 صبح
اولا اين روش درست است؟
سلام
فکر کنم چند وقت پیش یه همچین تاپیکی بود که نتیجه اش این شد که این کار استاندارد نیست .
چه خطایی میده؟

اما چون فايل اجرايي آن مدام تغيير مي كند مي خواهم فايل اصلي يك جا باشد
برای حل این مشکلت میتونی با استفاده از vs یه setup بسازی که قابلیت آپدیت شدن از طریق شبکه رو داشته باشه .(در مورد clickOnce جستجو کن)

j68719
چهارشنبه 24 شهریور 1389, 12:01 عصر
من می خواهم این کار را انجام بدم خطا میگیرد

System.Security.SecurityException: Request for the permission of type 'System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed

j68719
چهارشنبه 24 شهریور 1389, 17:49 عصر
لطفااین را ببینید چه مشکلی داره. روی سرور اجرا میشه و درسته ولی روی بقیه سیستم ها نه.

j68719
پنج شنبه 25 شهریور 1389, 00:19 صبح
میشه من رو راهنمایی کنید ؟

يكي از موارد مهمي كه بايد هنگام توسعه نرم افزار به اون دقت داشته باشين عدم وابستگي نرم افزار به سيستمي است كه نرم افزار بر روي اون توسعه پيدا مي كنه.
یعنی چه و راه حل اون چیه

seniamail
پنج شنبه 25 شهریور 1389, 17:10 عصر
به نظرم باید iis سرور رو راه اندازی کنید و سپس فایلهای جدید رو به صورت یک فایل زیپ شده بر روی سرور قرار بدید. بعدش یه برنامه دانلود بنویسید که فایل رو به صورت اتوماتیک در موقع اجرای برنامه(هروقت نیاز بود) از رو سرور داتلود کنه و unzip کنه به جای فایلهای قبلی
من خودم برنامه ی زیر که ضمیمه کردم رو کنار برنامه هام کپی میکنم و بعدش یه گزینه بروزرسانی تو برنامه میزارم
البته فایلهاتون رو با 7z زیپ کنید

seniamail
جمعه 26 شهریور 1389, 10:41 صبح
این که مشخصه
شما کافیه یه پوشه رو بر روی سرور share کنی و برای اون برنامه ای که داخلش کپی کردی یه shortcut بسازی

j68719
جمعه 26 شهریور 1389, 22:09 عصر
این که مشخصه
شما کافیه یه پوشه رو بر روی سرور share کنی و برای اون برنامه ای که داخلش کپی کردی یه shortcut بسازی

نه زیاد هم مشخص نیست چند جور خطا میده.
این یکیه :

System.Security.SecurityException: Request for the permission of type 'System.Data.SqlClient.SqlClientPermission, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' failed
این هم چنتا وارنینگ :
http://www.barnamenevis.org/forum/attachment.php?attachmentid=56494&stc=1&d=1291430562
http://www.barnamenevis.org/forum/attachment.php?attachmentid=56493&stc=1&d=1284648299

اینم یه نمونه از کانکتشن برنامم.
http://www.barnamenevis.org/forum/attachment.php?attachmentid=56406&d=1284558831

mohsen_csharp
شنبه 27 شهریور 1389, 00:42 صبح
با سلام
دوستان برنامه رو کافیه که پابلیش کنید روی سرور.
سپس روی هر کلاینت که میرید این برنامه رو از سرور نصب کنید
دفعه اول برنامه تمام پیش نیاز های مثل دات نت فریم ورک و ... رو روی کلاینت مورد نظر نصب میکنه
بعد برنامه اجرا میشه
در دفعات اجرای بعدی برنامه نسخه خودش رو با نسخه موجود در سرور چک می کنه اگه نسخه جدیدتری بود به سرعت دانلودش میکنه و اجراش می کنه
من این کار رو روی یه سازمان بزرگ انجام دادم به درستی هم کار کرد و هیچ مشکلی هم نداشت

j68719
شنبه 27 شهریور 1389, 12:17 عصر
این خطا چرا صادر میشه. وچطور می تونم برطرفش کنم؟

j68719
شنبه 27 شهریور 1389, 14:25 عصر
واقعا نمی دونم با چه زبانی از شما تشکر کنم .
یه سوال این کاری که با پابلیش کردن انجام میشه چه چیزایی هست که دستی انجام بدم و یه چیزه جالب اگر بعد از نصب اگر برنامه رو تو سرور از share بودن در بیاری هم کار می کنه چطور میشه؟؟
باز هم ممنون.