|
dev
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
ClickOnce program fails to run properly after updatedetail. When a new version is installed, the program does not initialize properly immediately after the update. The sequence is the user starts the program, is informed a new version is ready, installs it, when it is complete and the main form is displayed, the user needs close the form, and restarts the program to the form to initialize properly. The problem is that several controls are left disabled. The program uses MDI with a main form and several child forms as needed. The problem is on the main form. The controls that are not enabled are two list boxes, a tool bar, and a user control containing a numeric control. The menu and form tool bar initialize ok. The form uses the table layout control and several panels’ controls. The controls that do not initialize properly are in there own panel in a cell of the table layout control. It is like the list boxes are not there, they control the other controls determining when they are enabled. One list box is bound to a table and is filled. However, the value change event does not seam to be working. The other list box, contains a the list of the available MDI child forms and is filled in manually. It list is not filled in or updated even when I generate a new MDI child form. Restarting the program and every thing works normally. How do I get the form to run normally form the start? -- Mike Reed Hi Mike,
Based on my understanding, you have a ClickOnce deployed application. When a new version is installed and the application is run, some controls on the main form are disabled. If you exit the application and then restart , all works fine. If I'm off base, please feel free to correct me. In theory, when an application is updated on a client machine via ClickOnce, the application files of the new version are downloaded to the client pc to replace the old files. This action won't disable the controls of the application. I have also searched KB on Microsoft web site, but unfortunately I didn't find an article discussing about this problem. Could you please tell me how you update the applicaiton via ClickOnce? Do you use the default behaviour of ClickOnce (Project designer| Publish | Updates, select the checkbox before the item "The application should check for updates") , or program custom upgrade behavior with the classses in System.Deployment.Application namespace? If you update the application with custom upgrade behavior, have you disabled some controls at the beginning of the upgrade, but forgotten to enable them after the upgrade is finished? I look forward to your reply. Sincerely, Linda Liu Microsoft Online Community Support ================================================== Get notification to my posts through email? Please refer to http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif ications. Note: The MSDN Managed Newsgroup support offering is for non-urgent issues where an initial response from the community or a Microsoft Support Engineer within 1 business day is acceptable. Please note that each follow up response may take approximately 2 business days as the support professional working with you may need further investigation to reach the most efficient resolution. The offering is not appropriate for situations that require urgent, real-time or phone-based interactions or complex project analysis and dump analysis issues. Issues of this nature are best handled working with a dedicated Microsoft Support Engineer by contacting Microsoft Customer Support Services (CSS) at http://msdn.microsoft.com/subscriptions/support/default.aspx. ================================================== This posting is provided "AS IS" with no warranties, and confers no rights. You are right on, that is exactly what happens. The cultrate seems to be the
list boxes and a couple of controls they control the enabling of. The text boxes, mask edit, numeric up down, tool bars, and menu controls all work. Restarting the program after the update corrects the situation. The list boxes are never disabled or hidden in then normal running of the program. As stated originally, one list box is filled via data binding to a table in a dataset connected to a database and this box is filled but the events do seem to fire or that that event code is not being complete executed. The other list box is filled programmatically and is empty all though the focus rectangle does show up. . I use the default setting for the deployment; except for adding 5 third party files form ComponetOne as required files. Note the list boxes are the standard list boxes shipped with VS. The program is a VB.Net. The prerequisites are .Net 3.0, Windows installer 3.1 and SQL express. However, the problem existed before we added SQL express. The publishing location is a Windows 2003 server standard edition sp1. We are in the midst of beta testing the program and the use of ClickOnce deployment method. Except for the above problem, we are very pleased with the ClickOnce technology. I hope this helps and thank you for your timely resonance. -- Show quoteMike Reed "Linda Liu [MSFT]" wrote: > Hi Mike, > > Based on my understanding, you have a ClickOnce deployed application. When > a new version is installed and the application is run, some controls on the > main form are disabled. If you exit the application and then restart , all > works fine. If I'm off base, please feel free to correct me. > > In theory, when an application is updated on a client machine via > ClickOnce, the application files of the new version are downloaded to the > client pc to replace the old files. This action won't disable the controls > of the application. > > I have also searched KB on Microsoft web site, but unfortunately I didn't > find an article discussing about this problem. > > Could you please tell me how you update the applicaiton via ClickOnce? Do > you use the default behaviour of ClickOnce (Project designer| Publish | > Updates, select the checkbox before the item "The application should check > for updates") , or program custom upgrade behavior with the classses in > System.Deployment.Application namespace? > > If you update the application with custom upgrade behavior, have you > disabled some controls at the beginning of the upgrade, but forgotten to > enable them after the upgrade is finished? > > I look forward to your reply. > > > Sincerely, > Linda Liu > Microsoft Online Community Support > > ================================================== > Get notification to my posts through email? Please refer to > http://msdn.microsoft.com/subscriptions/managednewsgroups/default.aspx#notif > ications. > > Note: The MSDN Managed Newsgroup support offering is for non-urgent issues > where an initial response from the community or a Microsoft Support > Engineer within 1 business day is acceptable. Please note that each follow > up response may take approximately 2 business days as the support > professional working with you may need further investigation to reach the > most efficient resolution. The offering is not appropriate for situations > that require urgent, real-time or phone-based interactions or complex > project analysis and dump analysis issues. Issues of this nature are best > handled working with a dedicated Microsoft Support Engineer by contacting > Microsoft Customer Support Services (CSS) at > http://msdn.microsoft.com/subscriptions/support/default.aspx. > ================================================== > > This posting is provided "AS IS" with no warranties, and confers no rights. > > Hi Mike,
Thank you for your reply and detailed description. Does the problem exist when the application is deployed via ClickOnce to other client machine? Do those controls that are disabled after the upgrade have a similarity? You have mentioned that the list boxes are bound to a data source. Maybe the problem is caused by the data binding. You may have a try removing the data binding to the list boxes to see if the problem still exists. In addtion, it's hard to reproduce the problem on my side. Would you please send me screen shots, which display the form in abnormal and normal situation respectively? Hope this helps. Please try my suggestion. I look forward to your reply. Sincerely, Linda Liu Microsoft Online Community Support The problem happens on all client machines when the program is update by
ClickOnce. The is the only way the program is deployed. It seems to be the two list boxes on the main form. All other the other controls work except the two controlled by the list boxes. One list box is data bound, it is filled properly, and its events are not working. The other is not data bound and is not being filled and I can not tell if the events are working. Where can I send the screen shots? -- Show quoteMike Reed "Linda Liu [MSFT]" wrote: > Hi Mike, > > Thank you for your reply and detailed description. > > Does the problem exist when the application is deployed via ClickOnce to > other client machine? > > Do those controls that are disabled after the upgrade have a similarity? > > You have mentioned that the list boxes are bound to a data source. Maybe > the problem is caused by the data binding. You may have a try removing the > data binding to the list boxes to see if the problem still exists. > > In addtion, it's hard to reproduce the problem on my side. Would you please > send me screen shots, which display the form in abnormal and normal > situation respectively? > > Hope this helps. > > Please try my suggestion. I look forward to your reply. > > > Sincerely, > Linda Liu > Microsoft Online Community Support > > Hi Mike,
Thank you for your reply. Do you mean that the problem is caused by the two list boxes on the main form? I suggest you to narrow down the cause of the problem step by step by removing the data binding on the list box or unsubscribing the evets of the listboxes. When you find the real cause, you could solve the problem. As the problem that you can not tell if the events of the list box not boud are fired, you could add a line of code in the event handlers to show up a message box, e.g, MessageBox.Show("xxxx"). You may send the screen shots with your post in the newsgroup, or send it to my email box. To get my actual email address, remove 'online' from my displayed email address. Sincerely, Linda Liu Microsoft Online Community Support Yes, it is two list boxes on the main form and it is as if they are not
enabled. I do not think weather their bound or not matters. I will try to put some messages in strategic location to see if I can narrow down the problem. I will email the screen shot to you. -- Show quoteMike Reed "Linda Liu [MSFT]" wrote: > Hi Mike, > > Thank you for your reply. > > Do you mean that the problem is caused by the two list boxes on the main > form? > > I suggest you to narrow down the cause of the problem step by step by > removing the data binding on the list box or unsubscribing the evets of the > listboxes. When you find the real cause, you could solve the problem. > > As the problem that you can not tell if the events of the list box not boud > are fired, you could add a line of code in the event handlers to show up a > message box, e.g, MessageBox.Show("xxxx"). > > You may send the screen shots with your post in the newsgroup, or send it > to my email box. To get my actual email address, remove 'online' from my > displayed email address. > > > Sincerely, > Linda Liu > Microsoft Online Community Support > > Hi Mike,
Thank you for your reply and the screen shots. From the screen shots, it seems that the application takes on Windows XP style, however, the Windows XP style isn't applied to the application after the application is updated via ClickOnce. Perhaps exception/error occurs before the application enables Windows XP style. As for the problem that the user control below the 'Antifreeze' list box doesn't show correct data, you could add messageboxes in the event handler of the 'Antifreeze' list box to see whether this event is fired and the event handler is executed completely. Could you tell me when the list box that below the 'Antifreeze' list box is populated? You could also add some messageboxes in the event handler in which this list box is populated to see whether the event handler is fired. When does the application check for an update, before the application starts or after the application starts? To separate problem, I suggest that you select 'before the application starts'. To do this, right-click the project in the Solution Explorer and choose Properties. In the Project Designer, switch to Publish tab and click the Updates button. In the Application Updates window, select the option of 'Before the application starts'. You may also have a try debugging the application on the client machine using Windbg or Process Explorer. For more information on how to do it, you could read the article 'How to debug application crash/hang in production environment?' on the blog of our newsgroup support team. http://blogs.msdn.com/msdnts/ Hope this helps. Sincerely, Linda Liu Microsoft Online Community Support ClickOnce is able for multiple versions deployment but I do not think is
appropriate for updating the app. I would suggest uninstall before Click the ClickOnce is better. chanmm Show quote "Michael D. Reed" <chaskamn@online.nospam> wrote in message news:3F6ACD1B-E966-472A-9815-E3DA82931258@microsoft.com... >I am using ClickOnce to distribute a program. It works well except for one > detail. When a new version is installed, the program does not initialize > properly immediately after the update. The sequence is the user starts > the > program, is informed a new version is ready, installs it, when it is > complete > and the main form is displayed, the user needs close the form, and > restarts > the program to the form to initialize properly. > The problem is that several controls are left disabled. The program uses > MDI with a main form and several child forms as needed. The problem is on > the main form. The controls that are not enabled are two list boxes, a > tool > bar, and a user control containing a numeric control. The menu and form > tool > bar initialize ok. The form uses the table layout control and several > panels' controls. The controls that do not initialize properly are in > there > own panel in a cell of the table layout control. It is like the list > boxes > are not there, they control the other controls determining when they are > enabled. > One list box is bound to a table and is filled. However, the value change > event does not seam to be working. The other list box, contains a the > list > of the available MDI child forms and is filled in manually. It list is > not > filled in or updated even when I generate a new MDI child form. > Restarting the program and every thing works normally. > How do I get the form to run normally form the start? > > > -- > Mike Reed |
|||||||||||||||||||||||