Automatic update Not firing on form load

Hi there!

I've been beating my head against the wall to no avail on this one. I purchased WyBuild because it looks like it has a lot of potential, and does exactly what I Want it to do. I am stuck on one thing though that I can't find a way around

I added the Automatic Updater control to my C# Winform, set the properties I want (including guid.) I told the control to check for updates in 3 seconds after the form is loaded. I cannot seem to get that event fire off. If I use the Forcecheckupdate method, it works, but my program will then have an illegal operation after the update is finished. If I run the update through my "check for update" button (with forcecheckupdate commented out), everything goes smoothly.

What I want to have happen is this:

The program loads on computer start up (this works), when the form is presented to the user, check for updates, then initiate the update process IF an update is found.

I can't help thinking this should be easy ,but I don't know what I'm missing.

I've read through the docs over and over, watched the video a couple times, just don't know what I'm missing.

any help sure would be appreciated. Thanks!

-Mike

If I use the Forcecheckupdate method, it works, but my program will then have an illegal operation after the update is finished.

Right, because you're not using it correctly -- ForceCheckForUpdate() should not be used (a) at the start of your app and (unless you understand the internals of the AutomaticUpdater) (b) if there is another update step happening at the start of your app (which is very possible). It will throw exceptions when it's being used incorrectly.

And most of all, it shouldn't be used because the AutomaticUpdater automatically checks for updates. That's what it was designed to do. Calling ForceCheckForUpdates() defeats one of the main purposes of the AutomaticUpdater.

A lot of out customers use ForceCheckForUpdate incorrectly -- I don't know how we can solve this confusion problem. Perhaps we should just remove the function altogether.

I added the Automatic Updater control to my C# Winform, set the properties I want (including guid.) I told the control to check for updates in 3 seconds after the form is loaded. I cannot seem to get that event fire off.

It does fire. However it doesn't show any UI (a) when it's checking and (b) when there is no update found. This is by design. Why? Because telling the user there is no update to your app is a useless tidbit for a user. What action can they take based on that information?

If there is an update then they are notified of the progress, because a user can take actions if there is an update available.

Hi Wyatt,

I appreciate the response. My approach to this must be wrong then.

Without forcecheckforupdate, the program literally does not check. Here is how I'm testing this between using ForceCheck and Not using Forcecheck

Viewing my client.wyc, it's set to version 1.0. I have an update set up to 1.01 using wyBuild. If I use ForceCheckForUpdate in the program (either on form load, or from a button that a user can select).

Here is what I'm following:

https://www.youtube.com/watch?feature=player_embedded&v=zE9f_jfBi_8#t=144

Now to be fair, I am using DevEpress and I have minimal experience with any .Net language. With that said, I followed the steps included in the following page:

https://wyday.com/forum/t/188/menuitem-devexpress-ribbon/I am including wyDay.Controls in my namespace.

I understand it's hard to troubleshoot without seeing the code I've written. I have no problem posting what I'm doing if it helps just for troubleshooting purposes, but I'm pretty confident I've followed both sets of instructions to a T.

any other pointer I can follow would sure be appreciated. Thanks again.

Also, please note that at the end of the switch case, You are calling for ForceCheckUpdate, I don't know if removing it as a function would be a safe way to handle users from using this function.

Well, like I said:

It does fire. However it doesn't show any UI (a) when it's checking and (b) when there is no update found. This is by design. Why? Because telling the user there is no update to your app is a useless tidbit for a user. What action can they take based on that information?

If there is an update then they are notified of the progress, because a user can take actions if there is an update available.

Also, please note that at the end of the switch case, You are calling for ForceCheckUpdate

Right, you just shouldn't call it when you start your app -- because very few people call it correctly.

from https://wyday.com/forum/t/3112/automatic-update-not-firing-on-form-load/#post-15186" added the Automatic Updater control to my C# Winform, set the properties I want (including guid.) I told the control to check for updates in 3 seconds after the form is loaded. I cannot seem to get that event fire off"

Wyatt: "It does fire. However it doesn't show any UI (a) when it's checking and (b) when there is no update found. This is by design. Why? Because telling the user there is no update to your app is a useless tidbit for a user. What action can they take based on that information?"

No action but they are assured the update check is working. I may want to let them know if the check is broken. Think of it as a gentle hug for insecure users.