PDA

View Full Version : چند اشکال در برنامه نصبی



man_iran
پنج شنبه 19 مهر 1386, 23:09 عصر
من در ساخت برنامه نصبی دچار مشکل شدم لطف کنید و راهنمایی کنید :

1- چطوری می تونم به هنگام نصب برنامه زبان CLR را هم نصب کنم و اگر از قبل نصب شده باشه پاک کنم ؟
2- وقتی برای برنامه ام میانبر به صورت فارسی درست می کنم بعد از نصب برنامه، نوشته فارسی به صورت خوانا نمایش داده نمی شه! باید چه کار کنم؟
3- بعد از یک بار استفاده از برنامه نصبی دیگه برنامه جواب نمی ده و اخطار می زنه! باید چه کار کرد؟
4- فایل های اسمبلی چیه؟ مثلا برای یک برنامه ساده که فقط برای دارای یک فایل و یک آهنگ باشه چه نوع اسمبلی باید انتخاب بشه تا به پروژه اضافه بشه؟

man_iran
جمعه 20 مهر 1386, 11:15 صبح
کسی نیست راهنمایی کنه !؟
ببخشید فوریه ....

babak23
جمعه 20 مهر 1386, 11:32 صبح
من در ساخت برنامه نصبی دچار مشکل شدم لطف کنید و راهنمایی کنید :

1- چطوری می تونم به هنگام نصب برنامه زبان CLR را هم نصب کنم و اگر از قبل نصب شده باشه پاک کنم ؟

4- فایل های اسمبلی چیه؟ مثلا برای یک برنامه ساده که فقط برای دارای یک فایل و یک آهنگ باشه چه نوع اسمبلی باید انتخاب بشه تا به پروژه اضافه بشه؟

1برای نصب و حذف clr میتونی از قسمت add/remove control panel ویندوز استفاده کنی
هنگامی که برنامه های نصبی را میخواهیید نصب کنید اگه در کامپیوتر مورد نظر clr نصب نباشه خود برنامه نصبی آن را نصب خواهد کرد

2 در این مورد در هنگام ساخت setup برای برنامه خود وقتی برای میان بر برنامت اسم فارسی انتخاب میکنی هنگام بیلد کرد یه هشدار میده که از از font فارسی حمایت نمیکنه . بهت هشدار داده بود که, ( پس چرا اسم فارسی انتخاب کردی )پس اسم میانبر را فارسی نزار ( راحترین کار ) البته ممکنه راه حل دیگه ای وجود داشته باشه.

4 فایل های اسمبلی با مفهومی که قبلا با آن آشنا بودیید ( زبان اسمبلی) فرق میکنه
هنگام که برنامه های خود را کامپایل میکنید ماژول های برنامه ی شما در داخل فایل هایی به اسم فایل های اسمبلی قرار میگیرند که این فایل ها علاوه بر محتویات کد برنامه شامل اطلاعت تکمیلی و اضافی هستند که که این اطلاعات تکمیلی کار فایل های هدر در برنامه هایی مدریت نشده را انجام می دهند .
اگه اطلاعات بیشتر میخوای به کتاب سید محمد هاشمی رجوع کن

3- بعد از یک بار استفاده از برنامه نصبی دیگه برنامه جواب نمی ده و اخطار می زنه! باید چه کار کرد؟

اما در این مورد اول ببین دات نت نصب هست یا نه اگه نیست نصبش کن
دوم: مراحا ایجاد setup برای برنامه اجرایی را به درستی رفتی هنگام ایجاد setup وقتی که آن را بیلد میکنی هشدار یا پیغامی را بهت نمیده و از همه مهمتر قسمت project output را انتخاب کردی؟
اگه نکردی روی setup برنامه در قسمت سولیشن راست کلیک کن و ... در انتها گزینه primeri output را انتخاب کن .
موفق باشی.

man_iran
جمعه 20 مهر 1386, 14:03 عصر
1برای نصب و حذف clr میتونی از قسمت add/remove control panel ویندوز استفاده کنی
هنگامی که برنامه های نصبی را میخواهیید نصب کنید اگه در کامپیوتر مورد نظر clr نصب نباشه خود برنامه نصبی آن را نصب خواهد کرد

2 در این مورد در هنگام ساخت setup برای برنامه خود وقتی برای میان بر برنامت اسم فارسی انتخاب میکنی هنگام بیلد کرد یه هشدار میده که از از font فارسی حمایت نمیکنه . بهت هشدار داده بود که, ( پس چرا اسم فارسی انتخاب کردی )پس اسم میانبر را فارسی نزار ( راحترین کار ) البته ممکنه راه حل دیگه ای وجود داشته باشه.



ممنون از راهنمایی ...

1- چه کار باید بکنم تا برای برنامه ام یونیستال درست کنم که دیگه لازم به رفتن به کنترل پانل نباشه ؟
2- بله حق با شماست وقتی فارسی می نویسم زیر آن چند خط آبی می کشه! ولی خب باید راه چاره ای باشه چون من خودم چندین برنامه دیدم که فارسی بوده. راستی برنامه اصلی من که می خوام براش برنامه نصبی درست کنم خودش فارسیه! اگر بقیه راه چاره ای دارند ممنون می شم راهنمایی کنید.
--------------------------------------------------
شرمنده اگر زیاد سوال می کنم چون هر چی گشتم منبع های درست ای در مورد برنامه های نصبی پیدا نکردم برای همین مزاحم شماها شدم.
البته این را هم بگم که سوال ها هنوز ادامه دارند! :لبخند:

Amir Oveisi
جمعه 20 مهر 1386, 19:27 عصر
برای امکانات بیشتری که میخواین تو Setup داشته باشین میتونین از InstallShield استفاده کنید

hdv212
جمعه 20 مهر 1386, 19:49 عصر
با بررسی این کلید ها میتونی بفهمی که آیا ورژن دات نت مورد نظر روی سیستم نصب هست یا نه :

.NET Framework v1.1 HKLM\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322\Install
.NET Framework v2.0 HKLM\Software\Microsoft\NET Framework Setup\NDP\v2.0.50727\Install
.NET Framework v3.5 HKLM\Software\Microsoft\NET Framework Setup\NDP\v3.5\Install

man_iran
شنبه 21 مهر 1386, 10:19 صبح
ولی من هنوز جواب سوالم را نگرفتم!
چطور می شه برای یه برنامه فارسی یک برنامه نصبی درست کرد؟ چون وقتی اسم برنامه فارسی باشه برنامه نصبی به درستی کار نمی کنه!

man_iran
یک شنبه 22 مهر 1386, 18:27 عصر
ولی من هنوز جواب سوالم را نگرفتم!
چطور می شه برای یه برنامه فارسی یک برنامه نصبی درست کرد؟ چون وقتی اسم برنامه فارسی باشه برنامه نصبی به درستی کار نمی کنه!
ممنون می شم اگه جواب سوال بالایی را بدید.
یه سوال دیگه :
چطور می شه برای برنامه نصبی خود یه زمان معین انتخاب کرد تا بعد از آن دیگه کاربر نتونه از برنامه استفاده کنه حتی از برنامه نصبی. مثلا : یه مدت زمان 15 روزه!
چطور ؟

babak23
سه شنبه 24 مهر 1386, 08:07 صبح
ممنون می شم اگه جواب سوال بالایی را بدید.
یه سوال دیگه :
چطور می شه برای برنامه نصبی خود یه زمان معین انتخاب کرد تا بعد از آن دیگه کاربر نتونه از برنامه استفاده کنه حتی از برنامه نصبی. مثلا : یه مدت زمان 15 روزه!
چطور ؟
یه راهش اینه که تاریخ سیستم رابگیرید و با توجه به یک شمارنده و تعقیر تاریخ سیستم در هر روز میتونی این کار را انجام بدهید.
و یا اگه مثلا تاریخ سیستم به یک تاریخ مشخص رسید برنامه از کار بیفته و .... را هایی خیلی زیادی وجود داره که میشه جایگزین این روش کرد.

در مورد سوال بعدی که میگید من برنامم فارسی هست فکر نکنم مشکلی باشه من در مورد اسم میانبری که فارسی انتخاب شده گفتم که مشکل بوجود میاد ( در setup .net) درمورد فرم های برنامه فکر نکنم به چنین مورد برخورد
کنید .
از این مورد استفاده کنید

برای امکانات بیشتری که میخواین تو Setup داشته باشین میتونین از InstallShield استفاده کنید

man_iran
سه شنبه 24 مهر 1386, 10:02 صبح
یه راهش اینه که تاریخ سیستم رابگیرید و با توجه به یک شمارنده و تعقیر تاریخ سیستم در هر روز میتونی این کار را انجام بدهید.
و یا اگه مثلا تاریخ سیستم به یک تاریخ مشخص رسید برنامه از کار بیفته و .... را هایی خیلی زیادی وجود داره که میشه جایگزین این روش کرد.

اگر ممکنه یه نمونه برنامه از روشی که می گید بزارید اگر روش بهتری هم سراغ دارید ممنون می شم معرفی کنید. آخه در این روشی که می گید راحت می شه با عقب آوردن تاریخ ویندوز باز از برنامه استفاده کرد.

در مورد فارسی نوشتن یه چیزی بگم که وقتی در صفحات برنامه نصبی همون صفحاتی که در هنگام نصب بالا میان فارسی می نویسم هم با همین مشکل برخورد می کنم و متن به شکل ناخوانا نمایش داده می شه!

babak23
سه شنبه 24 مهر 1386, 10:59 صبح
در مورد اولی دستور خاصی نداره این مورد را خود شما باید باتوجه به برنامتون بنویسیید
از این مورد میتونید استفاده کنید این مورد فقط یک راهنما یی هست



string queryString = "SELECT date , conter FROM s_kar where date <> // Get the current date ";
SqlCommand command = objConnection.CreateCommand();
command.CommandText = queryString;
try
{
objConnection.Open();
SqlDataReader reader = command.ExecuteReader();
while (reader.Read())
{
day1 = (int)reader[0];
conter = (int)reader[1];
// Get the current date
if (conter ==15)
//دستور لازم برای متوقف شدن برنامه
else
if (dey1!=// Get the current date)
conter+=1;


}
reader.Close();

یک راه دیگه مثلا اگه تعداد رکورد های یکی از جدول هاتون به یک مقدار خاصی رسید برنامه از کار بیفته ویا وقتی برنامتون مثلا 1000 بار اجرا شد بعد برنام از کار بیفته و موارد دیگه ...

در مورد دومی هم موردهای زیادی میتونه باعث چنین مشکلی شده باشه در این زمینه تایچیک هایی زیادی بوجود اومده که نیاز به جستجو داره

man_iran
سه شنبه 24 مهر 1386, 11:13 صبح
ممنون از راهنمایی های کامل ...
سوال بعدی :لبخندساده: :
چه طور می شه برای برنامه نصبی خود رمز عبور گذاشت؟ البته من گذاشتن رمز عبور را بلدم ولی فقط می تونم برای تمام برنامه هام یک رمز قرار بدم.
من روشی می خوام که بشه برای هر برنامه یک رمز عبور داشته باشه. مثل همین کدهای فعال سازی خیلی از برنامه ها که باید برای فعال کردنشون با شرکت سازنده تماس گرفت...
یکی از روش ها اینه که برای هر کد یه بار برنامه نصبی درست ولی برای انتشار برنامه های زیاد خیلی وقت گیره! آیا روش دیگه ای می دونید ؟
باز هم مرسی...

babak23
سه شنبه 24 مهر 1386, 12:01 عصر
متاسفانه من منظور شما را متوجه نشدم
اما نحوه رمز گزاری بر روی برنامه معمولا در سطح (ابتدایی و متوسط ) به این صورته که از یک فیلد برای ذخیره رمز های عبور و از یک فیلد نام کاربری و از یک فیلد یا چند فیلد سطح دسترسی استفاده میشه و معمولا هم هنگام ورود به سیستم اطلاعات جدول رمز عبور از طریق برنامه خونده میشه و با توجه به اطلاعتی که کاربر در هنگام ورود به سیستم وارد کرده تصمیم گیری لازم صورت میگیره این یک روشی هست که خیلی ها ازش استفاده میکنن و برای امنیت بیشتر و میتونن از روش ها رمزنگاری و موارد دیگه که مربوط میشه به بحث امنیت هم استفاده کنن
خوب حالا شما از این موارد پیروی میکنید یا نه؟

البته برنامه های وجود دارن که با توجه به هربار نصب شدن (و یا موارد دیگر )نیاز هست که باشرکت سازنده تماس گرفته بشه در این برنامه ها به این صورت هست که شما وقتی برنامه را مجددا نصب میکنید با توجه به نصب جدید برنامه کدی در اختیار شما قرار میگیره که با تماس به شرکت سازنده و خواند این کد رمز عبور را به شما خواهند داد .
شاید منظور شما همین باشه؟
در هربار نصب مجدد برنامه یک کد تصادفی تولید میشه که با توجه به این کد های تصادفی شرکت سازنده با در اختیار داشتن تابعی رمز عبور را به شما خواهد گفت البته این موارد برای امنیت بیشتر بکار میره (برنامه های بزرگ ) در برنامه های کوچک روش اول راحت جواب میده در این مورد بیشتر از الگوریتم های رمز نگاری استفاده میشه.

man_iran
سه شنبه 24 مهر 1386, 12:12 عصر
البته برنامه های وجود دارن که با توجه به هربار نصب شدن (و یا موارد دیگر )نیاز هست که باشرکت سازنده تماس گرفته بشه در این برنامه ها به این صورت هست که شما وقتی برنامه را مجددا نصب میکنید با توجه به نصب جدید برنامه کدی در اختیار شما قرار میگیره که با تماس به شرکت سازنده و خواند این کد رمز عبور را به شما خواهند داد .
شاید منظور شما همین باشه؟
در هربار نصب مجدد برنامه یک کد تصادفی تولید میشه که با توجه به این کد های تصادفی شرکت سازنده با در اختیار داشتن تابعی رمز عبور را به شما خواهد گفت البته این موارد برای امنیت بیشتر بکار میره (برنامه های بزرگ ) در برنامه های کوچک روش اول راحت جواب میده
منظورم همین روشه...
خب برای این کار باید چه کار کرد؟ طبق گفته شما کاری باید کرد که برنامه کد تصادفی تولید کنه و بنا به همون کد هم می شه رمز عبور را گرفت. خب چطور می شه بین این کد تصادفی و رمز عبوری که باید داد رابطه برقرار کرد؟ یعنی از کجا می شه فهمید که این رمز عبور مال همان کد تصادفیست؟ البته این را هم درنظر داشته باشید که نباید رمز عبور کدی با کد دیگر یکی باشد.
ممنون می شم دوباره راهنمایی کنید.
----------------------------------------------------------------
توجه : هنوز سوال ها ادامه دارند :عصبانی++:

babak23
سه شنبه 24 مهر 1386, 12:23 عصر
البته این موردی که مد نظر شماست مثلا یک روش استفاده از تابع hash هست و CRC و .. ؟
این مورد به نظر ساده نمیاد نیاز به مطالعه داره من از این مورد استفاده نکردم ( چون فعلا نیازی ندیدم )

راهنمایی
http://barnamenevis.org/forum/showthread.php?t=39312&highlight=%D8%B1%D9%85%D8%B2+%D8%B9%D8%A8%D9%88%D8 %B1

البته در جستجو در همین سایت و یا در مورد کلماتی چون روش های رمز گزاری و امنیت و الگوریتم های رمز نگاری میتونید اطلاعاتی را بدست بیارید.