PDA

View Full Version : dll اکسل و مشکل ریجیستر کردن و خارج کردن از حافظه



aliila
یک شنبه 08 بهمن 1385, 08:05 صبح
من با Interop.Excel.dll از داخل برنامه از همه امکانات اکسل استفاده میکنم
اما مشکلی که وجود دارد اینه که

1- باید اکسل در ویندوز نصب باشد تا دستور زیر اجرا شود



excel_app = CreateObject("Excel.Application")

اگر excel در ویندوز نصب نباشه چه کنم من


2- بعد از هر بار باز کردن و بستن برنامه در processes - > task manager یک پروسس اکسل اضافه میشود

titbasoft
یک شنبه 08 بهمن 1385, 12:51 عصر
- بعد از هر بار باز کردن و بستن برنامه در processes - > task manager یک پروسس اکسل اضافه میشوداز کد زیر استفاده کنید:

Dim x As Type = Type.GetTypeFromProgID("excel.application")
Dim Xl As Object = Activator.CreateInstance(x)
System.Threading.Thread.CurrentThread.CurrentCultu re = New System.Globalization.CultureInfo("en-US")



گر excel در ویندوز نصب نباشه چه کن با استفاده از دستور RegSvr32 در شل می تونید رجیسترش کنید

programmermp
یک شنبه 08 بهمن 1385, 19:57 عصر
با استفاده از دستور RegSvr32 در شل می تونید رجیسترش کنید

با سلام

اقا روش استفاده از این دستور چطوریه (فکر کن از توی run باشه درسته؟)

ایا با اون هر dll رو می شه رجیستر کرد یا نه مثل فلش

فایلهای ocx رو می شه با هاش رجیستر کرد

titbasoft
دوشنبه 09 بهمن 1385, 13:10 عصر
بله Com32 Component هایی که In-process هستند (مثل activex های ocx) از این طریق رجیستر میشن، out of process ها هم با دستور regserver یا اجرای اون ها رجیستر می شن.

SabaSabouhi
سه شنبه 10 بهمن 1385, 09:05 صبح
2- بعد از هر بار باز کردن و بستن برنامه در processes - > task manager یک پروسس اکسل اضافه میشود

با سلام
مى‌توانید از کد زیر استفاده کنید:



System.Runtime.InteropServices.Marshal.ReleaseComO bject (MyObject);



صبا صبوحى

aliila
چهارشنبه 11 بهمن 1385, 08:06 صبح
با تشکر از همه دوستان
با استفاده از RegSvr32 موقع ریجستر کردن error زیر را میدهد



D:\bin\Interop.Excel.dll was loaded, but the DllRegisterServer entry point was not found.

This file can not be registered.





در ضمن باز پروسس اکسل با دو دستور بالا از حافظه خارج نشد

programmermp
چهارشنبه 11 بهمن 1385, 08:31 صبح
با تشکر از همه دوستان
با استفاده از RegSvr32 موقع ریجستر کردن error زیر را میدهد



D:\bin\Interop.Excel.dll was loaded, but the DllRegisterServer entry point was not found.

This file can not be registered.







سلام

من هم همین مشکل رو دارم

لطفا راهنمایی کنید

با تشکر

aliila
یک شنبه 15 بهمن 1385, 11:53 صبح
چگونه یک پروسس را از حافظه خارج کنیم