Whoa, such detailed answer really warrant its place in an FAQ. While I
crash through the material mentioned, could you please share with us more on the automation add-in function/technology? Thanks and regards, Jerry -----Original Message----- From: Sinha, Amitesh [mailto:[hidden email]] Sent: Wednesday, March 01, 2006 9:44 AM To: Jerry Jie Ji Subject: RE: [Quantlib-users] Err Msg "Not excel add-in format" for Object Handler examples If you have excel 2003, why do not you use automation add-in to expose the functions directory from quantlib library. XLL technology is getting deprecated. Most of your efforts are likely to be lost in coming years. Having said that, the following pointers may be of interest to you. 1. http://www.planatechsolutions.com/xlpfaq/Q0011.htm essentially open your xll in visual studio tool "depends" and see if any dll xll depends on is missing. I suspect log4cxx , oh dll may not be in the path. If you do not have depends, go to www.dependencywalker.com. 2. I am hoping that you are not mixing managed C++ and unmanaged C++ as string in managed C++ are treating differently. Most likely you are not doing this. 3. If point 1 does not rescue you, you may be mixing debug/release libraries, just check that you are not doing this. 4. Using DumpBin /Exports should list the DLLs bound statically to your code. You need to ensure they are in your path, and not just lying around the target machine. If you are familiar with COM, you might want to consider making automation add-in. xlls are painful and deprecated technology. I just use C# wrapper of C++ dlls. I even avoid explicit COM programming. let me know if the problem goes away. Regards Amitesh Sinha Valuation Risk Group CREDIT SUISSE Phone: +852-2101-6643 Mobile: +85267737571 email: [hidden email] -----Original Message----- From: [hidden email] [mailto:[hidden email]]On Behalf Of Jerry Jie Ji Sent: Wednesday, March 01, 2006 8:57 AM To: [hidden email] Subject: RE: [Quantlib-users] Err Msg "Not excel add-in format" for ObjectHandler examples Similar problem here, just that I'm using MS VC++ 2005 Express (8) and MS Excel (Office) 2003. Many thanks in advance! -- Jerry Singapore -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Liu, Xiaobo Sent: Wednesday, March 01, 2006 6:43 AM To: [hidden email] Subject: [Quantlib-users] Err Msg "Not excel add-in format" for ObjectHandler examples > Hi, > > I complied both latest versions of ObjectHandler > and QuantlibAddin, but could not load up > any *.xll files due to error msg stating that > the xll files are NOT of Excel add-in format. > > I am using MSVC++ 6.0 and Excel 2000, and would greatly appreciate any help on this. > Regards, > Xiaobo Liu ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! <a href="http://sel.as-us.falkag.net/sel?cmd=k&kid0944&bid$1720&dat1642">http://sel.as-us.falkag.net/sel?cmd=k&kid0944&bid$1720&dat1642 _______________________________________________ Quantlib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users CONFIDENTIAL NOTE: The information contained in this email is intended only for the use of the individual or entity named above and may contain information that is privileged, confidential and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete the mail. Thank you. ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ Quantlib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users ======================================================================== ====== Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ======================================================================== ====== CONFIDENTIAL NOTE: The information contained in this email is intended only for the use of the individual or entity named above and may contain information that is privileged, confidential and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete the mail. Thank you. |
We need to bear in mind, automation add-in are supported only on office xp and later version. for the versions below excel xp, I just wrap the function in a COM Coclass and use a VBA wrapper. Although there are tools to auatomataically generate xll from COM idl over the net, I resist the temptation to use xlls these days. Moreever,i can be wrong but Microsoft themselves does not want to promote the use of xlls, it seems to me.
Automation-addins are fairly accessible these days and are esp useful if you need to access COM exposed function from excel cell. There are many good references on these things and I would be repeating if I launch into a detailed explanations here..I will just list some good links to get started. 1. http://blogs.msdn.com/eric_carter/archive/2004/12/01/273127.aspx shows how to create a sample automation add-in, we cause expose our quantlib functions via a dll and access it through C# using dllimport attribute. I do not think wrapping will slow down computations materially as they still are done in quantlib's c++ compiled code. 2. http://msdn2.microsoft.com/en-us/library/ms173189.aspx However, for the office versions prior to office xp, I would simply make a com Add-in and wrap the functions in VBA. Lots of firms eg matlab follow the approach outlined above. Microsoft also recommends using VBA wrapper for interfaces exposed through COM. Regards Amitesh -----Original Message----- From: [hidden email] [mailto:[hidden email]]On Behalf Of Jerry Jie Ji Sent: Wednesday, March 01, 2006 10:36 AM To: Sinha, Amitesh Cc: [hidden email] Subject: RE: [Quantlib-users] Err Msg "Not excel add-in format" for Object Handler examples Whoa, such detailed answer really warrant its place in an FAQ. While I crash through the material mentioned, could you please share with us more on the automation add-in function/technology? Thanks and regards, Jerry -----Original Message----- From: Sinha, Amitesh [mailto:[hidden email]] Sent: Wednesday, March 01, 2006 9:44 AM To: Jerry Jie Ji Subject: RE: [Quantlib-users] Err Msg "Not excel add-in format" for Object Handler examples If you have excel 2003, why do not you use automation add-in to expose the functions directory from quantlib library. XLL technology is getting deprecated. Most of your efforts are likely to be lost in coming years. Having said that, the following pointers may be of interest to you. 1. http://www.planatechsolutions.com/xlpfaq/Q0011.htm essentially open your xll in visual studio tool "depends" and see if any dll xll depends on is missing. I suspect log4cxx , oh dll may not be in the path. If you do not have depends, go to www.dependencywalker.com. 2. I am hoping that you are not mixing managed C++ and unmanaged C++ as string in managed C++ are treating differently. Most likely you are not doing this. 3. If point 1 does not rescue you, you may be mixing debug/release libraries, just check that you are not doing this. 4. Using DumpBin /Exports should list the DLLs bound statically to your code. You need to ensure they are in your path, and not just lying around the target machine. If you are familiar with COM, you might want to consider making automation add-in. xlls are painful and deprecated technology. I just use C# wrapper of C++ dlls. I even avoid explicit COM programming. let me know if the problem goes away. Regards Amitesh Sinha Valuation Risk Group CREDIT SUISSE Phone: +852-2101-6643 Mobile: +85267737571 email: [hidden email] -----Original Message----- From: [hidden email] [mailto:[hidden email]]On Behalf Of Jerry Jie Ji Sent: Wednesday, March 01, 2006 8:57 AM To: [hidden email] Subject: RE: [Quantlib-users] Err Msg "Not excel add-in format" for ObjectHandler examples Similar problem here, just that I'm using MS VC++ 2005 Express (8) and MS Excel (Office) 2003. Many thanks in advance! -- Jerry Singapore -----Original Message----- From: [hidden email] [mailto:[hidden email]] On Behalf Of Liu, Xiaobo Sent: Wednesday, March 01, 2006 6:43 AM To: [hidden email] Subject: [Quantlib-users] Err Msg "Not excel add-in format" for ObjectHandler examples > Hi, > > I complied both latest versions of ObjectHandler > and QuantlibAddin, but could not load up > any *.xll files due to error msg stating that > the xll files are NOT of Excel add-in format. > > I am using MSVC++ 6.0 and Excel 2000, and would greatly appreciate any help on this. > Regards, > Xiaobo Liu ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! <a href="http://sel.as-us.falkag.net/sel?cmd=k&kid0944&bid$1720&dat1642">http://sel.as-us.falkag.net/sel?cmd=k&kid0944&bid$1720&dat1642 _______________________________________________ Quantlib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users CONFIDENTIAL NOTE: The information contained in this email is intended only for the use of the individual or entity named above and may contain information that is privileged, confidential and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete the mail. Thank you. ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ Quantlib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users ======================================================================== ====== Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ======================================================================== ====== CONFIDENTIAL NOTE: The information contained in this email is intended only for the use of the individual or entity named above and may contain information that is privileged, confidential and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete the mail. Thank you. ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642 _______________________________________________ Quantlib-users mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/quantlib-users ============================================================================== Please access the attached hyperlink for an important electronic communications disclaimer: http://www.credit-suisse.com/legal/en/disclaimer_email_ib.html ============================================================================== |
Hi All,
To clarify: - ObjectHandler and QuantLibAddin are supported subprojects of QuantLib, implemented using the Excel C API (XLLs) - Liu and Jerry are troubleshooting a QuantLibAddin error message - Amitesh is talking about scrapping ObjectHandler and QuantLibAddin altogether and implementing something new in a different technology e.g. automation Let me address these issues separately: 1) "Addin not in Excel format" error message from QuantLibAddin On 2/28/06, Liu, Xiaobo <[hidden email]> wrote: > > Hi, > > > > I complied both latest versions of ObjectHandler > > and QuantlibAddin, but could not load up > > any *.xll files due to error msg stating that > > the xll files are NOT of Excel add-in format. On 3/1/06, Jerry Jie Ji <[hidden email]> wrote: > Similar problem here, just that I'm using MS VC++ 2005 Express (8) > and MS Excel (Office) 2003. On 3/1/06, Sinha, Amitesh <[hidden email]> wrote: > 1. http://www.planatechsolutions.com/xlpfaq/Q0011.htm > essentially open your xll in visual studio tool "depends" and > see if any dll xll depends on is missing. I suspect log4cxx , oh dll > may not be in the path. If you do not have depends, go to > www.dependencywalker.com. > 2. I am hoping that you are not mixing managed C++ and unmanaged C++ as > string in managed C++ are treating differently. Most likely you are > not doing this. > 3. If point 1 does not rescue you, you may be mixing debug/release > libraries, just check that you are not doing this. > > 4. Using DumpBin /Exports should list the DLLs bound statically to your > code. You need to ensure they are in your > path, and not just lying around the target machine. Please see also: http://quantlib.org/quantlibaddin/troubleshooting.html#startup_error 2) Using automation instead of the C API On 3/1/06, Sinha, Amitesh <[hidden email]> wrote: > XLL technology is getting > deprecated. Most of your efforts are likely to be lost in coming years. For a long time it seemed evident that MS were trying to steer developers away from the API toward newer replacements - VBA/COM/.NET. Many people continue to use the API because for certain tasks it is orders of magnitude faster than the newer alternatives. And now it seems that MS have given up on their attempts to deprecate the API, apparently Excel 2007 will include enhancements to the API: http://blogs.msdn.com/excel/archive/2006/01/03/508985.aspx Regards, Eric |
In reply to this post by Jerry Jie Ji
Now it is working, following steps in Eric's email:
(1)Ran www.dependencywalker.com to see what were missing in my *.xll (2)Added ObjectHandler-vc6-mt-gd-0_1_2.xll in my system path. Your help is greatly appreciated! (I should have gone through the trouble shooting section in QL more carefully.) Regards, Xiaobo -----Original Message----- From: eric ehlers [mailto:[hidden email]] Sent: Wednesday, March 01, 2006 4:15 AM To: Sinha, Amitesh Cc: Jerry Jie Ji; Liu, Xiaobo; [hidden email] Subject: Re: [Quantlib-users] Err Msg "Not excel add-in format" for Object Handler examples Hi All, To clarify: - ObjectHandler and QuantLibAddin are supported subprojects of QuantLib, implemented using the Excel C API (XLLs) - Liu and Jerry are troubleshooting a QuantLibAddin error message - Amitesh is talking about scrapping ObjectHandler and QuantLibAddin altogether and implementing something new in a different technology e.g. automation Let me address these issues separately: 1) "Addin not in Excel format" error message from QuantLibAddin On 2/28/06, Liu, Xiaobo <[hidden email]> wrote: > > Hi, > > > > I complied both latest versions of ObjectHandler > > and QuantlibAddin, but could not load up > > any *.xll files due to error msg stating that > > the xll files are NOT of Excel add-in format. On 3/1/06, Jerry Jie Ji <[hidden email]> wrote: > Similar problem here, just that I'm using MS VC++ 2005 Express (8) > and MS Excel (Office) 2003. On 3/1/06, Sinha, Amitesh <[hidden email]> wrote: > 1. http://www.planatechsolutions.com/xlpfaq/Q0011.htm > essentially open your xll in visual studio tool "depends" and > see if any dll xll depends on is missing. I suspect log4cxx , oh dll > may not be in the path. If you do not have depends, go to > www.dependencywalker.com. > 2. I am hoping that you are not mixing managed C++ and unmanaged C++ as > string in managed C++ are treating differently. Most likely you are > not doing this. > 3. If point 1 does not rescue you, you may be mixing debug/release > libraries, just check that you are not doing this. > > 4. Using DumpBin /Exports should list the DLLs bound statically to your > code. You need to ensure they are in your > path, and not just lying around the target machine. Please see also: http://quantlib.org/quantlibaddin/troubleshooting.html#startup_error |
In reply to this post by Jerry Jie Ji
Hi Savior,
Sorry I know this isn't a strict QuantLib question but just hope someone here had been through similar error. I am stuck with the following linking error when building log4cxx0.9.7 dll project in MS Visual C++ 2005 Express Edition (the static project, however, builds fine) -- Linking... Creating library ../Lib/Debug/log4cxx.lib and object ../Lib/Debug/log4cxx.exp msxml.obj : error LNK2019: unresolved external symbol "wchar_t * __stdcall _com_util::ConvertStringToBSTR(char const *)" (?ConvertStringToBSTR@_com_util@@YGPA_WPBD@Z) referenced in function "public: __thiscall _variant_t::_variant_t(char const *)" (??0_variant_t@@QAE@PBD@Z) msxml.obj : error LNK2019: unresolved external symbol "char * __stdcall _com_util::ConvertBSTRToString(wchar_t *)" (?ConvertBSTRToString@_com_util@@YGPADPA_W@Z) referenced in function "public: char const * __thiscall _bstr_t::Data_t::GetString(void)const " (?GetString@Data_t@_bstr_t@@QBEPBDXZ) ../Bin/Debug/log4cxx.dll : fatal error LNK1120: 2 unresolved externals BTW, I've installed Microsoft Platform SDK for Windows Server 2003 SP1, MSXML 3.0, MSXML 4.0 SDK SP2 but none helped. Any help will be greatly appreciated! -- Jerry -----Original Message----- From: eric ehlers [mailto:[hidden email]] Sent: Wednesday, March 01, 2006 5:15 PM To: Sinha, Amitesh Cc: Jerry Jie Ji; Liu, Xiaobo; [hidden email] Subject: Re: [Quantlib-users] Err Msg "Not excel add-in format" for Object Handler examples Hi All, To clarify: - ObjectHandler and QuantLibAddin are supported subprojects of QuantLib, implemented using the Excel C API (XLLs) - Liu and Jerry are troubleshooting a QuantLibAddin error message - Amitesh is talking about scrapping ObjectHandler and QuantLibAddin altogether and implementing something new in a different technology e.g. automation Let me address these issues separately: 1) "Addin not in Excel format" error message from QuantLibAddin On 2/28/06, Liu, Xiaobo <[hidden email]> wrote: > > Hi, > > > > I complied both latest versions of ObjectHandler > > and QuantlibAddin, but could not load up > > any *.xll files due to error msg stating that > > the xll files are NOT of Excel add-in format. On 3/1/06, Jerry Jie Ji <[hidden email]> wrote: > Similar problem here, just that I'm using MS VC++ 2005 Express (8) > and MS Excel (Office) 2003. On 3/1/06, Sinha, Amitesh <[hidden email]> wrote: > 1. http://www.planatechsolutions.com/xlpfaq/Q0011.htm > essentially open your xll in visual studio tool "depends" and > see if any dll xll depends on is missing. I suspect log4cxx , oh dll > may not be in the path. If you do not have depends, go to > www.dependencywalker.com. > 2. I am hoping that you are not mixing managed C++ and unmanaged C++ as > string in managed C++ are treating differently. Most likely you are > not doing this. > 3. If point 1 does not rescue you, you may be mixing debug/release > libraries, just check that you are not doing this. > > 4. Using DumpBin /Exports should list the DLLs bound statically to your > code. You need to ensure they are in your > path, and not just lying around the target machine. Please see also: http://quantlib.org/quantlibaddin/troubleshooting.html#startup_error 2) Using automation instead of the C API On 3/1/06, Sinha, Amitesh <[hidden email]> wrote: > XLL technology is getting > deprecated. Most of your efforts are likely to be lost in coming years. For a long time it seemed evident that MS were trying to steer developers away from the API toward newer replacements - VBA/COM/.NET. Many people continue to use the API because for certain tasks it is orders of magnitude faster than the newer alternatives. And now it seems that MS have given up on their attempts to deprecate the API, apparently Excel 2007 will include enhancements to the API: http://blogs.msdn.com/excel/archive/2006/01/03/508985.aspx Regards, Eric CONFIDENTIAL NOTE: The information contained in this email is intended only for the use of the individual or entity named above and may contain information that is privileged, confidential and exempt from disclosure under applicable law. If the reader of this message is not the intended recipient, you are hereby notified that any dissemination, distribution or copying of this communication is strictly prohibited. If you have received this message in error, please immediately notify the sender and delete the mail. Thank you. |
Free forum by Nabble | Edit this page |