It is currently March 28th, 2024, 9:42 am

[Help] Rainmeter does not load all Skins on Startup

Get help with creating, editing & fixing problems with skins
strykor
Posts: 16
Joined: February 6th, 2013, 7:02 pm

[Help] Rainmeter does not load all Skins on Startup

Post by strykor »

As stated above, when I start my computer I always have to click "refresh all" to have Rainmeter load all skins successfully. And sometimes the weather Apps only work on refreshing them individually.

What could be a reason of this? It is mostly concernign the News Feed (Google, Yahoo and Gizmodo)...
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: [Help] Rainmeter does not load all Skins on Startup

Post by jsmorley »

Sounds to me like Rainmeter is loading before your network connection is stabilized. You might was to look at some kind of Startup Delayer program perhaps.
strykor
Posts: 16
Joined: February 6th, 2013, 7:02 pm

Re: [Help] Rainmeter does not load all Skins on Startup

Post by strykor »

Yeah, that could be, because I am using a WLAN chip in my computer. You are smart, never would have looked for that.

Is there any option in rainmeter that refreshes the skin automatically but only once after a certain time being loaded?
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: [Help] Rainmeter does not load all Skins on Startup

Post by jsmorley »

strykor wrote:Yeah, that could be, because I am using a WLAN chip in my computer. You are smart, never would have looked for that.

Is there any option in rainmeter that refreshes the skin automatically but only once after a certain time being loaded?
Probably, but not easily. It would take a somewhat complicated shell-game that is made more difficult by the fact that from the standpoint of Rainmeter, "loaded" and "refreshed" are virtually the same thing.

I really think the easiest solution is probably something like http://www.r2.com.au/page/products/show/startup-delayer/ or another utility like that. I have no opinion on which of the many startup delay programs out there is the best. This one at least claims it can delay a program until a network connection is available, which sounds promising.
User avatar
Jkon
Posts: 185
Joined: December 4th, 2009, 2:05 am

Re: [Help] Rainmeter does not load all Skins on Startup

Post by Jkon »

Could the wifistatus plugin be used to determine connection and send a refresh bang on a positive result?
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: [Help] Rainmeter does not load all Skins on Startup

Post by jsmorley »

Jkon wrote:Could the wifistatus plugin be used to determine connection and send a refresh bang on a positive result?
There are any number of ways you could cobble something together, but the trick is to do something that is reasonably simple and is smart enough to only do its thing once when the computer is restarted, and not on every refresh of Rainmeter or loading of a Layout or other times. An endless loop of refreshes would be easy to stumble into. You can't use "uptime" as Windows 8 handles that differently.

My gut reaction if you really don't want to use some external utility like Startup Delayer would be to create a simple invisible skin that uses the new INTERNET_CONNECTIVITY option in the SysInfo plugin to check for internet connectivity. It would simply check once a second, and as soon as the result changed from -1 to 1, it would use a !LoadLayout bang to load a saved Layout with the actual setup you want.

So:

1) Save a Layout of your current "real" setup in Manage / Layout. Let's call it "MySetup".
2) Create another Layout, checking the "Save as an empty layout" box before you save it. Call this one "Startup".
3) Load that new "Startup" Layout. You will have no skins loaded.
4) Create the little "startup" skin with the SysInfo measure in it. Let's call it "DelayUntilNet".
5) Temporarily comment out the bang that loads the "real" Layout, so you can:
6) Load just this "DelayUntilNet" skin.
7) Again save how things are now as the Layout "Startup". Now you have two Layouts, "MySetup" (with all your real skins) and "Startup" with just that DelayUntilNet skin.
8) Load the Layout "MySetup".
9) Edit the "DelayUntilNet" skin and put back the bang that makes it functional. Don't load it though.
10) In Windows, find the shortcut for Rainmeter that is in your Startup folder. This is in "C:\Users\YourName\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup"
11) Right click this shortcut and select "Properties".
12) Edit the "Target" field and add a !LoadLayout bang to the end of it. So something like "C:\Program Files\Rainmeter\Rainmeter.exe" !LoadLayout Startup

That's about it.

Now when your computer restarts (and only when it restarts) Rainmeter will be started (as it always did) but with that "Startup" Layout loaded. That will load our "DelayUntilNet" skin and nothing else. No Rainmeter skins will be on the screen.

As soon as that "DelayUntilNet" skin sees that there is an internet connection, it will load the "MySetup" Layout, which is all your regular skins. The "DelayUntilNet" skin is not included in that Layout, so it is unloaded and will only be activated again when you reboot.

You are also going to want be sure to keep your "MySetup" Layout "up-to-date" as you make changes in Rainmeter, so you don't end up saying "goddammit!" every time you reboot.

There are probably other ways as well, but as you can see, it's going to be a fair amount of effort just to avoid using something external like that Startup Delayer. Up to you of course.
User avatar
Jkon
Posts: 185
Joined: December 4th, 2009, 2:05 am

Re: [Help] Rainmeter does not load all Skins on Startup

Post by Jkon »

Could a substitution on the SSID key not simply be put through a conditional whereby if the condition fails, rainmeter does nothing, if the condition is met, rainmeter refreshes all and closes the current config or at least disables the current measure if you wish to continue using the wifi config.

There is probably a glaringly obvious problem with that,it just sounds way too easy. Ive been away from rainmeter for too long, got a lot of catching up to do.
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: [Help] Rainmeter does not load all Skins on Startup

Post by jsmorley »

Jkon wrote: There is probably a glaringly obvious problem with that,it just sounds way too easy. Ive been away from rainmeter for too long, got a lot of catching up to do.
Yes, if you unload a skin, then it won't be there the next time you restart. If you disable the measure, it will again be "enabled" and fire any time the skin is refreshed, and there is your endless loop...

Before anyone suggests using !WriteKeyValue / OnRefreshAction / OnCloseAction to persistently keep track of the state of things, that is unreliable if Rainmeter or Windows crashes or you lose power etc.
User avatar
jsmorley
Developer
Posts: 22628
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: [Help] Rainmeter does not load all Skins on Startup

Post by jsmorley »

The actual "DelayUntilNet" skin could be as simple as:

Code: Select all

[Rainmeter]
Update=1000

[MeasureInternet]
Measure=Plugin
Plugin=SysInfo
SysInfoType=INTERNET_CONNECTIVITY
IfEqualValue=1
IfEqualAction=[!LoadLayout MySetup]

[MeterDummy]
Meter=String
Note: This REQUIRES the latest 3.1 beta of Rainmeter from http://rainmeter.net, and won't work right on Windows XP, only Vista / Win7 / Win8. There is a slightly different skin you could use that would do the same thing on XP, but who cares about XP? It should die...
User avatar
Jkon
Posts: 185
Joined: December 4th, 2009, 2:05 am

Re: [Help] Rainmeter does not load all Skins on Startup

Post by Jkon »

I see your point about the endless loop alright. And while maybe not the easiest solution you have there, it is a very smart one.
Post Reply