PDA

View Full Version : سوال: دو مشكل در ساخت برنامه setup



samaram
چهارشنبه 05 اسفند 1388, 09:59 صبح
يه برنامه نصب براي پروژه ام ساختم.
1- با توجه به اينكه من از كريستال ريپورت خود vs2008 استفاده كردم بازم نياز هست كه كريستال ريپورت رو روي سيستم مقصد نصب كنم؟ چه ورژنشو؟!
2- امكانات مورد نيازمو در پنجره ي prerequistis تيك زدم. حالا كدوم گزينه رو از پايين انتخاب كنم تا نخواد اين امكانات رو از نت دانلود كنه؟(چون سيستم مقصد اينترنت نداره) بعد از انتخاب يكي از اين گزينه هاي پايين اين كادر آيا بايد مثلا كل دي وي دي نصب sqlserver2005 رو بريزم تو پوشه ي نصب؟!

samaram
چهارشنبه 05 اسفند 1388, 11:54 صبح
جواب سوال هامو بدست آوردم . اگه كسي خواست بگه تا برا اونم بگم. ولي يه مشكل ديگه:
بعد از ساخت ستاپ محتويات پوشه ي debug ستاپ رو بريزم رو سي دي كافيه؟ اونجا چجوري نصب كنم؟ فقط همين Setup رو نصب كنم يا دونه دونه كريستال ريپورت و دات نت و ... رو از تو پوشه هاشون نصب كنم؟
تو رو خدا زودتر كمكم كنيد . من فردا بايد پروژه ام رو تحويل بدم.

M.YasPro
چهارشنبه 05 اسفند 1388, 12:11 عصر
سلام
http://barnamenevis.org/forum/showthread.php?t=139529

samaram
چهارشنبه 05 اسفند 1388, 12:43 عصر
آره. منم دقيقا مث همين لينك عمل كردم ولي چند تا مشكل داشتم.
1- براي اون قسمت اولش كه داره ديتاتيبل آداپتور رو به پروژه اضافه ميكنه نميدونم اون مراحل رو چطور آوردن. يعني از وسط كار شروع كردن. بعد يكي از دوستان يه كم جلوتر گفته ديتاسورس رو به اين صورت اضافه كنيد . در صورتكيه ما ميخوايم ديتاتيبل اضافه كنيم نه ديتاسورس. ونهايتا اين بخش توضيح ايشون فكر كنم برا قبل از شروع پروژه نويسي باشه!يا اينكه الان بيام تمام دستورات كانكشن رو جايگزين كنم. درسته؟
2- حالا توي بخش دوم در اون قسمت مشكل دارم كه فايل هاي مورد نياز رو از debug بايد اضافه كنم. خب كدوما مورد نيازن؟!! يعني كدوم فايل ها رو اضافه كنم؟ به هر صورت من اومدم همه رو اضافه كردم و باقي كار رو به همين صورت ساختم. حالا كه بردم روي كامپيوتر مقصد اون فايل ستاپي كه به شكل يه جعبه و يه سي دي كنارش هست رو اجرا كردم و برنامه رو نصب كردم. ولي برنامه نه تنها تو منوي استارت نيست بلكه به مسير نصبش هم كه ميرم و آيكن اجراييش رو كليك ميكنم هيچ اتفاقي نميفته!!!
كامل كامل توضيح دادم!!!

M.YasPro
چهارشنبه 05 اسفند 1388, 12:48 عصر
دوست دارم کمکتون کنم اما من با این سبک (دیتاتیبل و ... ) کد نمیزنم

samaram
چهارشنبه 05 اسفند 1388, 12:56 عصر
دوست دارم کمکتون کنم اما من با این سبک (دیتاتیبل و ... ) کد نمیزنم
عيب نداره. شما با هر سبكي ميتونيد كمكم كنيد. باور كنيد اونقدر به هم ريخته و خسته ام كه نميتونم ذهنمو جمع كنم. فردا بايد تحويل بدم و خيلي سر اين موضوع نگرانم. حتي اگه شما مشكلي نداشته باشيد يه شماره از خودتون برام خصوصي بذاريد من تلفني ازتون بپرسم.

samaram
چهارشنبه 05 اسفند 1388, 14:25 عصر
m.yaspro عزيز از لطفتون واقعا ممنونم. با كمك شما تونستم بخش اصلي كارم يعني ساخت setup رو انجام بدم. حالا مونده اينكه برنامه رو كه روي سيستم مقصد نصب ميكنم بعدش هرچي فايل اجراييشو دابل كليك ميكنم اجرا نميشه. همونطور كه گفتم حدس ميزنم از بانك هاش باشه و همينطور هم بود! روي سيستم خودم كه برنامه رو اونجا نوشتم نصب ميشه و اجرا ميشه اما sqlserver رو كه stop كردم دقيقا مثل همون سيستم مقصد ميشه كه روش دابل كليك ميكنم و اجرا نميشه.
بنابراين بايد بانك ها رو اتچ كنم. ولي چجوري؟!! اخه اس كيو ال سروري كه تو منوي استارتم اومده اصلا گزينه ي management stdio نداره. configration manager داره كه توي اون نميتونم بانكي رو اتچ كنم. چطور بانك هامو اتچ كنم؟

M.YasPro
چهارشنبه 05 اسفند 1388, 14:49 عصر
خواهش می کنم
کانکشن استرینگ رو به این صورت تغییر بدین

Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.m df;Database=dbname; Trusted_Connection=Yes
یا

Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.m df;Database=dbname; uid=sa;pwd=xxxx
فایل دیتابیس رو کنار exe به برنامه اضافه کنید

pbiuki630
چهارشنبه 05 اسفند 1388, 14:57 عصر
خواهش می کنم
کانکشن استرینگ رو به این صورت تغییر بدین

Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.m df;Database=dbname; Trusted_Connection=Yes
یا

Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.m df;Database=dbname; uid=sa;pwd=xxxx
فایل دیتابیس رو کنار exe به برنامه اضافه کنید


میشه کل روشتون رو اینجا بذارید:خجالت:

M.YasPro
چهارشنبه 05 اسفند 1388, 14:59 عصر
توی پست شماره 3 روش یکی از بچه های همین سایت هست که من هم از این روش استفاده می کنم

samaram
چهارشنبه 05 اسفند 1388, 15:06 عصر
خواهش می کنم
کانکشن استرینگ رو به این صورت تغییر بدین

Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.m df;Database=dbname; Trusted_Connection=Yes
یا

Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.m df;Database=dbname; uid=sa;pwd=xxxx
فایل دیتابیس رو کنار exe به برنامه اضافه کنید
بازم شرمندتون شدم. خيلي ممنون.
چشم. اينا كه گفتيد رو دارم انجام ميدم. فقط يه چيزديگه. منظورتون از فايل ديتابيس كلا همون فايل هاي mdf , ldf هستند ديگه. نه؟

M.YasPro
چهارشنبه 05 اسفند 1388, 15:09 عصر
بله همون فایل

samaram
چهارشنبه 05 اسفند 1388, 15:20 عصر
خواهش می کنم
کانکشن استرینگ رو به این صورت تغییر بدین

Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.m df;Database=dbname; Trusted_Connection=Yes
یا

Server=.\SQLExpress;AttachDbFilename=c:\mydbfile.m df;Database=dbname; uid=sa;pwd=xxxx
فایل دیتابیس رو کنار exe به برنامه اضافه کنید
1- تو رشته هاي بالا دقيقا عبارت "AttachDbFilename" رو تايپ كنم؟ يا منظور اسم يه مولفه ي ديگه است؟
2- c:\mydbfile.m df منظور چيه؟ ادرس جايي رو بدم كه در حال حاضر فايل mdf اونجا قرار داره؟

M.YasPro
چهارشنبه 05 اسفند 1388, 15:26 عصر
همونو تایپ کنین .
ادرس فایل mdf رو بدین سعی کنین dynamic باشه چون در سیستم مقصد به مشکل بر می خورین

samaram
چهارشنبه 05 اسفند 1388, 15:28 عصر
همونو تایپ کنین .
ادرس فایل mdf رو بدین سعی کنین dynamic باشه چون در سیستم مقصد به مشکل بر می خورین
منظورتون از ديناميك بودنش چيه؟

M.YasPro
چهارشنبه 05 اسفند 1388, 15:37 عصر
اگر فایل دیتابیس درست کنار exe هست(نه یه level بالاتر نه یه level پایین تر)نیازی به ادرس دهی دینامیک نیست .
کانکشن شما میشه :

Server=.\SQLExpress;AttachDbFilename=mydbfile.m df;Database=dbname; uid=sa;pwd=xxxx

samaram
چهارشنبه 05 اسفند 1388, 16:07 عصر
درست شد! ولي همچين روالي رو انجام دادم! به نظر شما خوبه؟
1- دستور اتصال رو اينجوري نوشتم:



SqlConnection con=new SqlConnection (" Data Source=.\\SQLEXPRESS;AttachDbFilename=c:\\Tanin.md f;Integrated Security=True;Connect Timeout=30;User Instance=True");


به اون شكل كه شما گفتين چندتا مشكل داشتم. يكي اينكه نميدونستم پسورد اس كيو ال چنده! و يكي هم ua رو نميدونستم در سيستم من چيه! بعدشم موقع اجرا حتي به اون صورت كه فايل ديتابيس رو كنار exe برنامه گذاشتم و بعد همشونو يكجا ادد كردم به ستاپ بازم خطا ميداد و كانكشن باز نميشد.
2- ستاپ رو با اين توالي ساختم: اول خود ستاپ رو ساختم و در اون مرحله "choose file to include" تمام محتويات پوشه ي debug برنامه ام به اضافه ي اون تا فايل هاي mdf , ldf پروژه ام كه كنار اونا بود رو بهش دادم. بعد امكانات مورد نيازم(كريستال ريپورت و دات نت و...) رو براش تعريف كردم. بعد هم اون آيكن ساختن و... و نهايتا build كردم.
در مرحله ي بعد كه آوردم روي سيستم مقصد : اول نصبش كردم(دات نت و اس كيو ال و... همه نصب شد) . بعد اون دو تا فايل mdf و ldf رو مستقيم كپي كردم تو همون ريشه درايو c
اينجوري بود كه كار كرد!!!!!!!1

samaram
چهارشنبه 05 اسفند 1388, 16:17 عصر
دستی کپی کردین؟
:لبخند:آره. بابا سخت نگيرين. قرار نيست سي دي بدم بهش كه خودش نصب كنه. ميخوام برم خودم براش نصب كنم و بيام. من سر كار هم كلي از اين بلاها سر بانك هاي نرم افزارهاي اداريمون در ميارم!

samaram
چهارشنبه 05 اسفند 1388, 16:25 عصر
موفق باشین
ممنون. امروز كمك بزرگي بهم كردين. امكان نداشت بدون راهنمايي شما بتونم اين ستاپ رو بسازم. آرزو ميكنم تو بحراني ترين شرايط زندگيتون خدا شگفت آورترين كمك رو بهتون بكنه.
راستي نگفتين اينجوري كه نوشتم هم خوبه؟ نظرتونو بگيد خب. من فردا با اين ترفند برم پروژه رو راه بندازم. دوباره قول ميدم بشينم حسابي كار كنم!

M.YasPro
چهارشنبه 05 اسفند 1388, 16:32 عصر
خوبه البته فقط واسه کار راه افتادن .
من خودم امروز تصمیم گرفتم برم installshield رو یاد بگیرم که به مشکلاتی که شما امروز برخوردین گرفتار نشم

samaram
چهارشنبه 05 اسفند 1388, 19:02 عصر
ای باباااااا. این پروژه ی من همچنان مشکل داره نامرد! با این ستاپ بقیه ی فرم ها مشکل داره:افسرده:

الان مشکلم اینه:
فایل ستاپ رو ساختم. همه چیش کامل و درسته . روی سیستم مقصد هم به درستی نصب شد. حالا که نوبت اتچ کردن فایل هام شده مشکل دارم. sqlserver ی که با ستاپم روی سیستم مقصد نصب شده configration manager هستش. و اون قسمت دیتابیس ها رو نداره تا بتونم دیتابیسم رو اتچ کنم. مثلmanagement stdio نیست که توش بتونم بانک ها رو اتچ کنم.
توروخدا یکی به دادم برسه . خیلی عجله دارم.:گریه:

M.YasPro
پنج شنبه 06 اسفند 1388, 07:55 صبح
احتیاجی به اتچ نداره ، کانکشن استرینگتون این کارو می کنه

samaram
پنج شنبه 06 اسفند 1388, 09:04 صبح
احتیاجی به اتچ نداره ، کانکشن استرینگتون این کارو می کنه
خب پس من اين بانك هاي لعنتي رو در كدوم مرحله ي ستاپ اضافه كنم تا اين ديگه ايراد نگيره؟ تو اون مرحله ي choos... كه اضافه كرده بودم ديگه.

M.YasPro
پنج شنبه 06 اسفند 1388, 09:15 صبح
الان دیتابیس توی vs و کنار پروژتون نیست؟

samaram
پنج شنبه 06 اسفند 1388, 09:33 صبح
الان دیتابیس توی vs و کنار پروژتون نیست؟
چرا هست. ولي اينجوري اضافه اش كردم:
روي نام سلوشن مربوط به برنامه ي اصليم(نه برنامه ي ستاپ) كليك راست كردم و از اونجا add و بعد add existing item بعد هم آدرس دو تا فايل mdf و ldf رو دادم بهش.
البته براي سلوشن برنامه ي ستاپ هم اضافه اش كردم. بذاريد با اين حالت هم تست كنم

M.YasPro
پنج شنبه 06 اسفند 1388, 09:38 صبح
روی سلوشن نه روی نام پروژه کلیک راست کنید و دیتابیس رو اضافه کنید

samaram
پنج شنبه 06 اسفند 1388, 09:42 صبح
روی سلوشن نه روی نام پروژه کلیک راست کنید و دیتابیس رو اضافه کنید
اين يكيو بلد بودم ديگه:خجالت:

بازم نشد. بذارید من یه سری تصویر از سلوشن برنامه اصلیم(نه برنامه ستاپ) براتون بذارم:
http://www.freeimagehosting.net/uploads/4bb91a8f6d.jpg

کانکشن استرینگ هم اینه:



SqlConnection con = new SqlConnection("Data Source="+ System.Net .Dns .GetHostName ()+"\\SQLEXPRESS;Initial Catalog=Tanin;Integrated Security=True");

M.YasPro
پنج شنبه 06 اسفند 1388, 11:04 صبح
اشتباه انجام دادین

samaram
پنج شنبه 06 اسفند 1388, 11:18 صبح
اشتباه انجام دادین
!!!!!! خب اون database1.sdf تو کدوم مسیر کامپیوترم هست تا من بهش ادد کنم؟

M.YasPro
پنج شنبه 06 اسفند 1388, 11:19 صبح
برای connection هم به این سایت یه سر بزنین همه چی دستتون میاد
http://www.connectionstrings.com/sql-server-2005#1
http://www.connectionstrings.com/


!!!!!! خب اون database1.sdf تو کدوم مسیر کامپیوترم هست تا من بهش ادد کنم؟اون مهم نیست من می خواستم جای دیتا بیس رو بهتون نشون بدم
پ و : اون دیتابیسهایی که با استفاده از خود vs به این شکل هستند .

samaram
پنج شنبه 06 اسفند 1388, 11:56 صبح
اون مهم نیست من می خواستم جای دیتا بیس رو بهتون نشون بدم
پ و : اون دیتابیسهایی که با استفاده از خود vs به این شکل هستند .
الان بالاخره من باید چیکار کنم؟ به بخش دیگه ای از پروژه ام دیتابیس رو ادد کنم؟
راستی این فایل های mdf,ldf رو از کدوم مسیر به پروژه ام اضافه کنم؟ نکنه اشتباه ادد میکنم

M.YasPro
پنج شنبه 06 اسفند 1388, 12:06 عصر
من اینجاش رو می گفتم که اینجوری کار نکردم
من جور دیگه با دیتابیس کار می کنم
ولی توی datasource ویژوال استودیو فکر کنم میتونی فایل دیتابیس اد کنی به پروژت

samaram
پنج شنبه 06 اسفند 1388, 22:14 عصر
من اینجاش رو می گفتم که اینجوری کار نکردم
من جور دیگه با دیتابیس کار می کنم
ولی توی datasource ویژوال استودیو فکر کنم میتونی فایل دیتابیس اد کنی به پروژت
ممنون از لطفتون. الان بالاخره من نفهمیدم با این ستاپ چیکار کنم؟ دوستان دیگه شماها با روش دیگه ای غیر از من کار نکردین ؟ خب یکی راهنماییم کنه دیگه!