New Expansion module to fix GUI issues « Thread Started on Apr 24, 2005, 2:36am »
Hi everyone,
I've created an expansion module for WeatherLink 5.5 (and higher) that will hide the "upload progress" dialog. It also sends a command to display the "bulletin" page upon startup, instead of starting on the blank gray screen.
To install, download the zip in the link above, and extract the file called WxLinkGUIfixer.dll into your WeatherLink\Expansion_Modules directory. Then, go into WeatherLink and click File/Manage Modules... In the Expansion Module Management dialog, click Add Module. If you unzipped it to the right place, you'll see WxLinkGUIfixer.dll in the list. Click it and click Open. It should be added to your list, and there should be an [x] to the left meaning it will be enabled. Click OK, and you'll get a box telling you you'll have to restart WeatherLink to activate it. Do that, and you should be dialog free!
NOTE: It has a bug. Because of the way Davis wrote WeatherLink, I can't just "remove" the dialog. I'm simply hiding it. That means, it still pops up and becomes active while it's working, you just don't see it because I made it very tiny. When it's uploading, the WeatherLink window will be "inactive", beeping if you click on it. This is normal, and is exactly like it used to be with the dialog in place. Don't worry, it will eventually come back to you.
I've put in a request to have it hosted as a "real project" on sourceforge.net, but it will require a few days before they can review it. In the meantime, if you would like to see the source code I've made it available at http://home.comcast.net/~jadeters/WxLinkGUIfixerSrc.zip You'll need Microsoft Visual Studio 6.0 if you want to compile it.
Note: I'm providing this with NO WARRANTY and AS-IS. If someone posts issues in this topic, I might be able to address them, but maybe not. I have a day job!
Also note: Davis has not released their promised interface specifications for the expansion modules. I had to reverse engineer their Weather Underground module to see what they were doing. I believe I have just enough code to behave properly, but this contains a fair amount of guesswork.
It seems to work OK for me, but remember -- you are using this software at your own risk! I cannot be held responsible for any damage to your computer, your software, data files, or proper behavior of WeatherLink. If you cannot accept these risks, do not download and install this software!
In the near future, I hope to have perhaps more customizable features (initial start page being the strip charts, for example) and I would like to create an installer. But for now, I'm going to throw this out and let people play with it.
Hint: if it bombs out and you can't even start WeatherLink (heaven forbid!) go into your WeatherLink\Expansion_Modules folder and find the file named ModuleList.dat. If you had no expansion modules before, simply delete this file and the WxLinkGUIfixer.dll file, then restart WeatherLink. If you did have an expansion module installed before, you will either have to either delete this file and reenable it, or you can hand edit the file and deleting the line containing WxLinkGUIfixer.
Let me know how it's going by posting in this thread.
Joined: Feb 2004 Gender: Male Posts: 55 Location: Crewe, VA Karma: 0
Re: New Expansion module to fix GUI issues « Reply #1 on Apr 24, 2005, 8:56am »
Good Job jaded. I installed WxLinkGUIfixer module this morning and it works like a charm. As a personal favor though I would like to keep the Bulletin window from not opening. I now use WxSolution as my Primary WX Software and run Weatherlink for one minute every three hours to primarily maintain and update the Weatherlink history files.
Re: New Expansion module to fix GUI issues « Reply #2 on Apr 24, 2005, 8:17pm »
Quote:
Good Job jaded. I installed WxLinkGUIfixer module this morning and it works like a charm. As a personal favor though I would like to keep the Bulletin window from not opening. I now use WxSolution as my Primary WX Software and run Weatherlink for one minute every three hours to primarily maintain and update the Weatherlink history files.
I can do that, certainly. What I haven't figured out is "how" to easily let users make these choices for themselves. (Minimum effort, of course.) For now, just download http://home.comcast.net/~jadeters/WxLinkGUIfixer.dll and give it a shot.
Re: New Expansion module to fix GUI issues « Reply #4 on Apr 25, 2005, 12:00pm »
Haven't tried it yet but is there a way to keep the bulletin window active while the program is uploading? Reason I ask is that using dial-up it takes a while to upload the data. Just curious.
Joined: Feb 2004 Gender: Male Posts: 55 Location: Crewe, VA Karma: 0
Re: New Expansion module to fix GUI issues « Reply #7 on Apr 26, 2005, 6:41pm »
What box are you referring to dave? If it's the packet downloading notice then that's OK however the box with the little check boxes in it that should now be hidden
Re: New Expansion module to fix GUI issues « Reply #8 on Apr 26, 2005, 8:08pm »
Dragonfly I am refering to the box with the little check boxes. It still comes up. It shows that its enabled with the X. Heck I even restarted the computer thinking that might work but to no avail.
Re: New Expansion module to fix GUI issues « Reply #9 on Apr 26, 2005, 8:28pm »
The problem seems to be that after I restart Weatherlink the module becomes disabled?? Doesn't make sense but after several attempts it keeps happening. I tried not restarting but the result is still the same. Any Idea's.
Re: New Expansion module to fix GUI issues « Reply #10 on Apr 27, 2005, 9:40pm »
Quote:
The problem seems to be that after I restart Weatherlink the module becomes disabled?? Doesn't make sense but after several attempts it keeps happening. I tried not restarting but the result is still the same. Any Idea's.
Hi, sorry it's been a while (work, y'know.) Anyway, here are things I'd try:
0. Make sure you've put the DLL in the correct Expansion_Modules directory. If you have several old versions of WeatherLink laying around, you might not have it where you expect. If you're not sure, right click on the start button, and pick Explore or Explore all users. Navigate to find the shortcut you use to launch WeatherLink. Right click on the WeatherLink shortcut, then pick "properties". In the shortcut tab, you should see a "Target" field containing something like "c:\program files\weatherlink 55\weatherlink551.exe" (I think that's the default if you didn't change folders during installation), and in the "Start in" field, it should have something matching, like "c:\program files\weatherlink 55". The DLL should be a subfolder of the "Start in" folder called "Expansion_Modules". So, the whole filename to the DLL from the above example would be "c:\program files\weatherlink 55\expansion_modules\WxLinkGUIfixer.DLL"
1. Verify that your ModuleList.dat file is read/write, and not "read only". It's in the same Expansion_Modules folder described above. You can right click on ModuleList.dat, then pick "Properties". Near the bottom of the general tab is an attribute check box marked "Read-only": make sure it's clear (not checked.) This could possibly be why it could be temporarily working, but fails to restart.
2. Verify you have the latest version of WeatherLink; mine is 5.5.1, dated 11/12/2004. I coded the expansion module to not complain if WeatherLink is at 5.5.0, but I didn't test it with that version.
3. If you have any other expansion modules installed, try disabling them temporarily. My DLL might not work and play well with others -- I've only tested it in conjunction with the WeatherUnderground module.
4. Give up. Seriously, this really was a hack; I debugged my way through the tip of the weatherunderground expansion module. There is absolutely no documentation, and the only clues I have are four function entry points, helpfully named WLinkExpModuleCaps, WLinkExpModuleCommands, WLinkExpModuleInit, and WLinkExpModuleStrs. I intercepted these calls, and made some educated assumptions about the data I saw flowing through the code. It wasn't too long before I got lost with all the various calls being made at seemingly random times. I tried to emulate its behavior, or at least enough of it to accomplish this task. I certainly may not have covered enough bases.
If you do figure out a way to make it work, please post your results here. If it's a technical issue, I might be able to fix it in the code if I can duplicate the bug. If it's a procedural problem, other people might benefit from your experience. And if you give up, well, I certainly learn from bad things too.
Re: New Expansion module to fix GUI issues « Reply #11 on Apr 30, 2005, 9:32pm »
Jaded, the problem was that I didn't place it in the modules directory. Which was strange because when I clicked on Manage Modules it was there. Anyways it working fine now. Thank You. Now if you could come up with some type of fix to keep the Bulletin active while the data is uploading that would be cool. Hey, I guy can dream, right?
Re: New Expansion module to fix GUI issues « Reply #12 on May 1, 2005, 11:56pm »
Glad that fixed it, and thanks for letting me know the cause, just in case someone else encounters the problem.
Unfortunately, I won't be able to help you with the second request. It's not a "cosmetic" sort of fix, it's inherent to the system's current design (or lack thereof.) I think if you want something that's going to work better, you'll have to look towards some of the third-party software offerings.
The Davis software is showing its age. Not that I have too many complaints about how it functions for my needs, but the operation reveals a lot about the design of the software, and it's obvious even from the outside that at this point it consists mostly of patches upon patches. I imagine any real architecture that it may once have had was corrupted long ago. I hate to be too critical, but I recognize the symptoms, having seen them myself plenty of times over the years.
My guess is that there's some guy over at Davis saying, "Come on, boss, the current design is unmaintainable crap. You know it, I know it, and even our customers know it. Please let us rewrite it." And the boss is saying something like, "No! There's no money in rewrites!" That's just my guess, anyway
Joined: Jun 2005 Gender: Male Posts: 50 Location: Fairfield County Ohio, USA Karma: 2
Re: New Expansion module to fix GUI issues « Reply #14 on Oct 26, 2005, 10:11pm »
I've been using WxGUIFixer for several weeks now without any problems. It has allowed me to shutdown and restart WeatherLink using a schedule to keep it operational after a lock up while I'm away from home and still report wind gust to CWOP.
Thanks Jaded!
« Last Edit: Oct 26, 2005, 10:12pm by Mark / Ohio »
Re: New Expansion module to fix GUI issues « Reply #16 on Nov 1, 2005, 12:13am »
I'm glad everyone's liking it so much. It really was a simple hack
I feel I owe you all a report on the status of the COM object (now that Davis released their SDK, I did start work on it.) Nothing has happened since September. Day job, family obligations, writing code becoming a bit of a busman's holiday and the frustration of not being able to make it everything I'd hoped for have all kept me from pounding the keyboard. I still intend to get something out some day, but I'm already not convinced that the extra complexity will allow it to be stable without a serious amount of work.