- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Hi,
I've been creating Fort ran DELL's that are called from a GI from within EXCEL using VA. One of the problems I run into is that if the Fort ran code crashes, it brings EXCEL down with it. Does upgrading to 6.5 with OM support buy me anything? I believe that OM is implemented as a DELL that is run in the same process space.
Also what are my other alternatives? Is it possible to run the DELL under a separate process space? Can I create a BB COM wrapper that is called by the EXCEL VBA GUI which in turn calls the Fortran DLL?
I'm just starting to learn about COM, so I'd appreciate any info or resources that anyone can provide.
Thanks,
Kin Wong
I've been creating Fort ran DELL's that are called from a GI from within EXCEL using VA. One of the problems I run into is that if the Fort ran code crashes, it brings EXCEL down with it. Does upgrading to 6.5 with OM support buy me anything? I believe that OM is implemented as a DELL that is run in the same process space.
Also what are my other alternatives? Is it possible to run the DELL under a separate process space? Can I create a BB COM wrapper that is called by the EXCEL VBA GUI which in turn calls the Fortran DLL?
I'm just starting to learn about COM, so I'd appreciate any info or resources that anyone can provide.
Thanks,
Kin Wong
Ссылка скопирована
5 Ответы
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Used the spell checker, I see.... I love how it turns DLL into DELL. I complained about that twice so far...
I recommend NOT using Spell Check here.
Steve
I recommend NOT using Spell Check here.
Steve
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Here's the unchecked version, usually a spell checker asks you to verify the changes:
Hi, I've been creating Fortran DLL's that are called from a GUI from within EXCEL using VBA. One of the problems I run into is that if the Fortran code crashes, it brings EXCEL down with it. Does upgrading to 6.5 with COM support buy me anything? I believe that COM is implemented as a DLL that is run in the same process space.
Also what are my other alternatives? Is it possible to run the DLL under a separate process space? Can I create a VB COM wrapper that is called by the EXCEL VBA GUI which in turn calls the Fortran DLL?
I'm just starting to learn about COM, so I'd appreciate any info or resources that anyone can provide.
Thanks, Kin Wong
Hi, I've been creating Fortran DLL's that are called from a GUI from within EXCEL using VBA. One of the problems I run into is that if the Fortran code crashes, it brings EXCEL down with it. Does upgrading to 6.5 with COM support buy me anything? I believe that COM is implemented as a DLL that is run in the same process space.
Also what are my other alternatives? Is it possible to run the DLL under a separate process space? Can I create a VB COM wrapper that is called by the EXCEL VBA GUI which in turn calls the Fortran DLL?
I'm just starting to learn about COM, so I'd appreciate any info or resources that anyone can provide.
Thanks, Kin Wong
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
CVF 6.5a does provide the ability to create an out-of-proc COM server, providing some additional fault tolerance. But you must take care coding. Different applications can respond differently when their out-of-proc COM server dies horribly; some are better written than others. :-)
If it were me, I'd spend the time trying to understand why my current dll is crashing and try to make it more robust. Depending on your current version of CVF the upgrade may still be worthwhile if it helps you find the problem. Then the COM Server stuff is gravy.
hth,
John
If it were me, I'd spend the time trying to understand why my current dll is crashing and try to make it more robust. Depending on your current version of CVF the upgrade may still be worthwhile if it helps you find the problem. Then the COM Server stuff is gravy.
hth,
John
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
Thanks for the info. Can you give me some tips or direct to some resources for COM programming practices that will provide better fault tolerance? Like I said, I'm just starting to learn about COM.
The Fortran DLL contains a new set of calculations (basically a subroutine that is plugged in) for each new project that comes in, so there will always be some errors introduced in the process of programming the DLL. I provided the EXCEL VBA GUI and the Fortran framework, so any programmer can work on a new project by just plugging in the project specific calculations. About 90% of the time, the problem is due to the programmer leaving a type statement in the code during debugging and it crashes when called from a VBA program.
Kin
The Fortran DLL contains a new set of calculations (basically a subroutine that is plugged in) for each new project that comes in, so there will always be some errors introduced in the process of programming the DLL. I provided the EXCEL VBA GUI and the Fortran framework, so any programmer can work on a new project by just plugging in the project specific calculations. About 90% of the time, the problem is due to the programmer leaving a type statement in the code during debugging and it crashes when called from a VBA program.
Kin
- Отметить как новое
- Закладка
- Подписаться
- Отключить
- Подписка на RSS-канал
- Выделить
- Печать
- Сообщить о недопустимом содержимом
About 90% of the time, the problem is due to the programmer leaving a type statement in the code during debugging and it crashes when called from a VBA program.
Well, this would crash a regular dll, COM dll server, and a COM exe server. In the first two cases, your VBA caller would crash immediately as well. In the last case, it depends on the robustness of the client. Again, I'd focus on getting error free code. COM will not provide you any relief from having to write good code.
-John
Well, this would crash a regular dll, COM dll server, and a COM exe server. In the first two cases, your VBA caller would crash immediately as well. In the last case, it depends on the robustness of the client. Again, I'd focus on getting error free code. COM will not provide you any relief from having to write good code.
-John

Ответить
Параметры темы
- Подписка на RSS-канал
- Отметить тему как новую
- Отметить тему как прочитанную
- Выполнить отслеживание данной Тема для текущего пользователя
- Закладка
- Подписаться
- Страница в формате печати