I was wondering if someone could tell me whether or not there is a way to poll the current weather conditions from the VP2 while running the WeatherLink for Windows software?
I saw the VP2 DLL on the Davis site, that allows you to communicate with the console directly. That would be nice for a stand alone weather application however I would like to run along side Weatherlink.
There is also the WeatherLink Module SDK that would seem to be a logical choice for exporting current weather data. Does any such add on already exist?
Ideally the add-on would provide shared memory or some other real-time mechanism.
I am looking for something that is either freeware or open source.
Thanks in advance!
I also wanted realtime access to the WeatherLink data, because I wanted my own copy of the GUI. I run Windows XP and I despise having to be "logged in" in order for WeatherLink to run. I would much rather have WL be running as a service with a user-independent GUI application so that I won't lose my internet feeds or data collection if my machine is rebooted without me logging in.
I was very excited when the SDK came out. I immediately started work on a COM interface that would fire events as they occurred. (I'm a big fan of providing COM interfaces as VB programmers everywhere can use the components, and it makes writing unit tests a snap.) However, I quickly ran into a snag: I could register an event for WeatherLink to "officially" call into my SDK module only once per minute at its most frequent. That makes visually interesting screens like the Bulletin impossible to duplicate using only the SDK's API.
There is another way to approach this, though, and that is with an inelegant hack. Before the SDK was made available, I sniffed around in the debugger and identified enough of their API to at least load some of my own code. I used Spy++ to identify the annoying Update Progress popup dialog, and wrote a window hook that resizes it to 0 by 0 pixels, rendering it invisible. I also have an "at startup time" routine that fires a message to open the Bulletin window when the application is launched.
By forcing the bulletin window to open and hooking the interesting messages that update the various displays, it should theoretically be possible to get a copy of the data in real time, and maybe even fire it off as real events. IF the data is updated via messages, that is.
If you are interested in my pre-SDK approach, the original code is available at
http://home.comcast.net/~jadeters/WxLinkGUIfixerSrc.zipand the compiled DLL is at
http://home.comcast.net/~jadeters/WxLinkGUIfixer.zip It's not pretty, but it's simple.