PDA

View Full Version : راه حل مناسب برای وصل کردن دیتابیس اکسس به پروژه یا نمایش ندادن مسیر نصب در setup



morteza.azad
جمعه 14 آبان 1389, 09:54 صبح
با سلام.
مشکلی دارم که نمیدونم چطور باید حلش کنم لطفا راهنماییم کنید:
من پروژه ای ساختم با دیتابیس اکسس که فایل اکسس رو در پوشه debug<-bin گذاشتم و از درون پروژه هم هرجا به برقراری دیتابیس داشتم از تابع GetDirectory() به فایلم دسترسی پیدا کردم و مشکلی نداره، حتی اگه جای فایل exe رو هم عوض کنم مشکلی پیش نمیاد.
مشکل من تو گزارش گیریه، چون باید آدرس بانک رو به کریستال بدم، که اگه این مسیر تغییر کنه دیگه گزارش تولید نمیشه.
با دیتاست هم خیلی کار کردم، اما اون هم تو گزارش گیری مشکل داره و اینکه دیتابیس رو اد میکنه تو پروژه، که من اینو نمیخام.
یه فکری به دهنم رسید که بیام آدرس مشخصی رو به کریستال بدم، و setup ای رو واسه برنامم بنویسم که پروژه و دیتابیس رو تو اون آدرس مشخص نصب کنه، که تا اینجاش جواب میده.
اما اگه کاربر بخواد آدرس نصب رو عوض کنه دیگه همه چی خراب میشه.هر چی هم گشتم که بتونم موقع ساخت setup مسیر نصب رو از کاربر مخفی کنم تا دسترسی نداشته باشه بازم پیدا نکردم.
لطفا ی راه حل مناسب واسه مشکلم بگین. ممنون

ali-kh
جمعه 14 آبان 1389, 10:48 صبح
یه راهش اینه
به جای اینکه مسیر نصب رو نزاری عوض بشه

فقط موقع نصب بگو بانکتو یه جای خاص کپی کنه
مثلا توی system32 یا روت drive c

یه راهش هم اینه بیا از stimul report استفاده کن . که به گزارشت حتی میتونی conection string بدی من که خیلی ازش راضیم

morteza.azad
جمعه 14 آبان 1389, 11:16 صبح
جناب ali-kh . لطفا راهنماییم کنید چجوری میتونم بانک رو تو یه آدرس خاص بریزه؟

ali-kh
جمعه 14 آبان 1389, 11:30 صبح
با چی setup میسازید؟؟
با خود دات نت؟؟

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

hossin.esm
شنبه 15 آبان 1389, 16:07 عصر
یکی دیگر از راهش اینکه جداول کریستال ریپورت را از طریق کد پر کنید.

.PrintTableAdapter.Fill(DataSet.print);

rd1.Database.Tables["Print"].SetDataSource(DataSet.Tables["Print"]);

CrystalReportViewer1.RefreshReport();

CrystalReportViewer1.Zoom(100);