ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   RTD wrapper functions do not work in Excel 2007 (https://www.excelbanter.com/excel-programming/365792-rtd-wrapper-functions-do-not-work-excel-2007-a.html)

peterhoa

RTD wrapper functions do not work in Excel 2007
 
I sell an addin which links to a number of real time providers (eSignal,
market feed...) using a dll (written to the RTD standard). I use VBA
wrapper functions which in turn call the RTD dll. Works fine with Excel 2002
and Excel 2003. It does NOT work with Excel 2007 however. I've recompiled
the dll to ensure the VB 6.0 reference includes the 2007 libraries. If I use
the RTD function directly from a worksheet cell it DOES work. This shows the
dll is functioning correctly. However, when it's included in a VBA wrapper
function nothing happens. ie cell values are not updated. I've stipped the
dll down to the point where it simply displays the time -- ie a few lines of
code -- with the same result: wrapper functions do not work.

Wrapper functions are essential as asking users to use RTD direct is complex
and not a practical solution for average users. Has anybody else had a
problem with wrapper fucntions?

peterhoa[_2_]

RTD wrapper functions do not work in Excel 2007
 
I forgot to mention that it's Excel 2007 beta 2.

"peterhoa" wrote in message
...
I sell an addin which links to a number of real time providers (eSignal,
market feed...) using a dll (written to the RTD standard). I use VBA
wrapper functions which in turn call the RTD dll. Works fine with Excel
2002
and Excel 2003. It does NOT work with Excel 2007 however. I've recompiled
the dll to ensure the VB 6.0 reference includes the 2007 libraries. If I
use
the RTD function directly from a worksheet cell it DOES work. This shows
the
dll is functioning correctly. However, when it's included in a VBA
wrapper
function nothing happens. ie cell values are not updated. I've stipped
the
dll down to the point where it simply displays the time -- ie a few lines
of
code -- with the same result: wrapper functions do not work.

Wrapper functions are essential as asking users to use RTD direct is
complex
and not a practical solution for average users. Has anybody else had a
problem with wrapper fucntions?




[email protected]

RTD wrapper functions do not work in Excel 2007
 
peterhoa wrote:
I forgot to mention that it's Excel 2007 beta 2.

"peterhoa" wrote in message
...
I sell an addin which links to a number of real time providers (eSignal,
market feed...) using a dll (written to the RTD standard). I use VBA
wrapper functions which in turn call the RTD dll. Works fine with Excel
2002
and Excel 2003. It does NOT work with Excel 2007 however. I've recompiled
the dll to ensure the VB 6.0 reference includes the 2007 libraries. If I
use the RTD function directly from a worksheet cell it DOES work.


Sorry, no answer to your question but I can say that I see exactly the
same behaviour he writing =RTD() directly in the worksheet cells
works fine but using a wrapper function returning
Excel.Application.WorksheetFunction.RTD() doesn't work. I can see that
in the latter case Excel calls my ConnectData() just as usual but
almost immediately thereafter it calls DisconnectData() -- without any
apparent reason. Even more surprizingly, it still calls RefreshData()
for the topic it just disconnected from.

The fact that =RTD() in the worksheet works makes me suspect that this
is a beta2 bug, I hope this wasn't a conscious design decision in Excel
2007, so I can only hope it's going to be fixed in the final version.

Regards,
VZ


peterhoa[_2_]

RTD wrapper functions do not work in Excel 2007
 
The Microsoft beta team sent me an email acknowledging the problem:
"Thanks for the note. This is an issue we are aware of and that we are
working on."

They invited me to send them a test so I have sent them a simple test which
produces the problem. So hopefully it will be fixed in the final release.

Your description of the disconnect function in the RTD dll being called
immediately on loading ties in exactly with what I found and in the test I
sent Microsoft a message box pops up when that happens so it's very clear
what's going on.

Peter

wrote in message
oups.com...
peterhoa wrote:
I forgot to mention that it's Excel 2007 beta 2.

"peterhoa" wrote in message
...
I sell an addin which links to a number of real time providers (eSignal,
market feed...) using a dll (written to the RTD standard). I use VBA
wrapper functions which in turn call the RTD dll. Works fine with
Excel
2002
and Excel 2003. It does NOT work with Excel 2007 however. I've
recompiled
the dll to ensure the VB 6.0 reference includes the 2007 libraries. If
I
use the RTD function directly from a worksheet cell it DOES work.


Sorry, no answer to your question but I can say that I see exactly the
same behaviour he writing =RTD() directly in the worksheet cells
works fine but using a wrapper function returning
Excel.Application.WorksheetFunction.RTD() doesn't work. I can see that
in the latter case Excel calls my ConnectData() just as usual but
almost immediately thereafter it calls DisconnectData() -- without any
apparent reason. Even more surprizingly, it still calls RefreshData()
for the topic it just disconnected from.

The fact that =RTD() in the worksheet works makes me suspect that this
is a beta2 bug, I hope this wasn't a conscious design decision in Excel
2007, so I can only hope it's going to be fixed in the final version.

Regards,
VZ




Jose

RTD wrapper functions do not work in Excel 2007
 
Hi Peter,

Is this issue assumed to have been sorted out in the official Excel 2007
release? I have upgraded to it and now I am having real trouble with the RTD
functionality. Basically, all my RTD links ( directly from the worksheet
cells ) fail to update. I have debbuged my RTD server and none of the entry
points are being called. It looks like excel does not even try to activate
the rtd server.

However, the same RTD server behaves correctly in Excel 2003.

I have played around with all the security settings in Excel 2007 to no
avail. Any light on this?

Thanks,

Jose

"peterhoa" wrote:

The Microsoft beta team sent me an email acknowledging the problem:
"Thanks for the note. This is an issue we are aware of and that we are
working on."

They invited me to send them a test so I have sent them a simple test which
produces the problem. So hopefully it will be fixed in the final release.

Your description of the disconnect function in the RTD dll being called
immediately on loading ties in exactly with what I found and in the test I
sent Microsoft a message box pops up when that happens so it's very clear
what's going on.

Peter

wrote in message
oups.com...
peterhoa wrote:
I forgot to mention that it's Excel 2007 beta 2.

"peterhoa" wrote in message
...
I sell an addin which links to a number of real time providers (eSignal,
market feed...) using a dll (written to the RTD standard). I use VBA
wrapper functions which in turn call the RTD dll. Works fine with
Excel
2002
and Excel 2003. It does NOT work with Excel 2007 however. I've
recompiled
the dll to ensure the VB 6.0 reference includes the 2007 libraries. If
I
use the RTD function directly from a worksheet cell it DOES work.


Sorry, no answer to your question but I can say that I see exactly the
same behaviour he writing =RTD() directly in the worksheet cells
works fine but using a wrapper function returning
Excel.Application.WorksheetFunction.RTD() doesn't work. I can see that
in the latter case Excel calls my ConnectData() just as usual but
almost immediately thereafter it calls DisconnectData() -- without any
apparent reason. Even more surprizingly, it still calls RefreshData()
for the topic it just disconnected from.

The fact that =RTD() in the worksheet works makes me suspect that this
is a beta2 bug, I hope this wasn't a conscious design decision in Excel
2007, so I can only hope it's going to be fixed in the final version.

Regards,
VZ






All times are GMT +1. The time now is 06:07 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com