ورود

نسخه کامل مشاهده نسخه کامل : تغییر آدرس محل جاری نرم افزار در سی شارپ!!!!!



ahmad_r
27-08-2009, 14:55
با سلام

میدونم تیتری که انتخاب کردم گویای سوالم نیست لذا سعی می کنم با توضیحاتی که می دهم سوالم را شرح دهم

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

مشکل اینجاست که بعد از فرستادن پرینت به PDF Generator آدرس پیش فرض آن به واسطه پنجره Open ی که از طریق PDF Generator باز شده و مکان فایل PDF را درخواست می کند عوض شده و در اولین تقاضای اطلاعات از دیتا بیس بعد از استفاده از PDF Generator ارور می دهد.

مثلا فرض کنید آدرس فایل دیتا بیس من C:\software\db\database.mdb باشد و بعد از فرستادن پرینت به PDF Generator مکان فایل PDF خروجی را D:\output\document.pdf قرار داده شود. حال اگر با دیتا بیس کار داشته باشیم اررو می دهد که دیتا بیس در آدرس D:\output\database.mdb وجود ندارد.

چگونه می توان آدرس پیش فرض آن را همان طور که نرم افزار PDF Generator تغییر می دهد ما هم دوباره به آدرس اصلی آن باز گردانیم

ahmad_r
27-08-2009, 23:08
...Please answer


آیا هنوز متوجه منظورم نشدید یا....

_H2_
29-08-2009, 15:10
سلام
مشخص است که ConnectionString شما ایراد دارد.
احتمالاً دیتابیس را attach نکرده اید و از express استفاده میکنید و احتمالاً از دستوراتی مثل System.Environment.CurrentDirectory و یا \. استفاده کرده اید !!!
ConnectionString چیست؟

ahmad_r
30-08-2009, 16:33
نکته: قبل از فرستادن پرینت به نرم افزار PDF Generator مشکلی وجود ندارد اما بعد از فرستادن حداقل یک پرینت به این نرم افزار جهت ساخت PDF در اولین درخواست دیتابیس، ارور می دهد


اینم ConnectionString :
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Database.mdb;Jet OLEDB:Database Password= zx

_H2_
30-08-2009, 21:47
سلام
به مشکل از همان مسیر دهی نسبی در نرم افزار شما است (همان \.)
این طرز آدرس دهی مشکل دارد و ربط خاصی به PDF Generator ندارد، آن هم نبود در جای دیگر و زمان دیگر این ایراد خودش را نشان میدهد.
این را تست کنید:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DATADIRECTORY|\Database.mdb;Jet OLEDB:Database Password= zx

تست کنید.