Collection was modified; enumeration operation may not execute - visual-studio-2010

VB.NET 2010 project, VS 2010, VSS (think it is 2008).
looking at other posts for this error, seems it is because of a change in a loop, enumeration, etc... In my case, all I do is open the project, make any change, like re-sizing the form, save and close and when I reopen that form I get this error. then I can undo checkout of the code and it opens fine. Not even making a change to any code, just re-size the form. ANY change I make, gets this error. The code is in production already and works fine, and I think it only happens on my pc.
Help! Thank you in advance...
adding - actually it looks like it only happens in changes in the form, and the error is only on the form, not the code. But it happens on any form.

A coworker figured it out for me. It was an issue with DevExpress windows controls and Visual Studio.
Solution is here:
How to enable visual inheritance for Developer Express controls.

Related

MSI Installer error 2810 interrupts installation, but still let's it finish with no problems

I have a setup created that installs an application, and still does, but it started giving a strange warning at the end out of the blue. So, when the installation process finishes, the following appears:
The installer has encountered an unexpected error installing this package. This may indicate a problem with this package. The error code is 2810.
So I checked 2810, and it says:
On the dialog [2] the next control pointers do not form a cycle. There is a pointer from both [3] and [5] to [4].
I was not changing anything in the "User interface" or "Custom actions" so this came unexpected. Also the installation completes if you just click ok and everything works fine, it just doesn't look good from a user perspective. Any help or similar issues encountered?
Control_Next: This is probably just the tab-order for the controls on the dialog. See the Control_Next column of the Control Table. You need to find a way to visit each control of the dialog in sequence and sort out so there are no loops or double links.
TAB Order: In the dialog in question (launch the setup and get yourself to the FinishedForm dialog), try hitting TAB repeatedly to see what happens. It might work, but you might see the control order being messed up so TAB unexpectedly moves around the dialog haphazardly going in "reverse" selecting a control already visited or similar.
Fix: Fixing this depends on what tool you are using. You can "test fix" directly in the final MSI using ORCA or a similar tool to edit the Control Table directly (just open the MSI and do it). The real, lasting fix will be in the sources used to compile the setup. WiX, Installshield, Advanced Installer, Visual Studio Installer, or whatever tool you are using. Exact fix depends on tool. A screen shot of the Control Table content could give us the clue we need.
(combining comments into an actual solution)
If you're using the common script EnableLaunchApplication.js within a Visual Studio Installer project, then the 2810 error code is most likely caused by a single line within that script, along with a recent Visual Studio update.
The fix, as mentioned by user Olaf:
in the EnableLaunchApplication.js I changed the line INSERT INTO 'Control' ... and replaced the value 'CloseButton' with 'Line1'. – Olaf Jan 9 at 14:16
With the entire corrected script linked by user Shangwu:
Here is the latest JavaScript without causing error 2810. stackoverflow.com/a/59888956/6079057 – Shangwu Jan 24 at 0:49
The underlying reason can be found in answers by Adam cosby and Stein Åsmul.
I actually had the same problem and my Control Table was over populated just as you mentioned above. I beleive it was related or at least co-incided with the Visual Studio update from 16.3 to 16.4.2. For me I used the Visual Studio Installer too and on the older version of VS it compiles fine but the same commit number on a different machine with the new version it causes the same issue and the Control Table has a lot more Control_Next entries populated. Still not sure how to fix yet though in the source.
Edit:
Ok I discovered the problem. The issue with it now populating more of the Control_Next I can only put down to a the update. However, the automatic entries put in by Visual Studio would have been fine but I realised we had the MSI launch the exe after install using this: Visual Studio Installer > How To Launch App at End of Installer technique.
That meant I was injecting and modifying the Control_Next and thus caused the loop of Control_Next to be non circular. It is worth noting that the Control_Next is basically the tab order of the MSI screen and it must always be closed (imagine the tab without anywhere to go).. Anyway, it was ultimately caused by us modifying on the post build process the Control_Next to add in the checkbox. After working out the last entry on a build without our code running i just modified the original last entry and then slotted in out one there. Now it works fine.
Hope this helps

Microsoft visual studio screen problem

I am having a problem thats not about the code, it's about the screen in Microsoft visual studio 2008.
Actually problem is i created one utility from couple of weeks i didn't opened that utility today i opened (in Microsoft visual studio the screen appearing blank no controls are visible in that.But all the controls properties are there. I tried a lot but i didn't get solution. Last when the same thing happened i created the controls again. Now i don't want to go to create all the controls again. If any one have the solution please help me.
Before screen is like this:
Now its blank (like new page)
From your description I'm not sure if this is a application/code build issue or an IDE issue, what you could try is to reset the settings in visual studio and see if this helps.
You can do this by going to Tools -> Import/Export settings and then following the wizard to reset the settings, you may also want to perform a backup before resetting them (this is also part of the wizard) then they can be restored if this causes you further issues.
I don't have a copy of 2008 available at the moment so some menu entries may be slightly named different.
Hope this helps!
EDIT:
Now there is more information, this looks like there may be a problem with the code in the
InitializeComponent
method of the form.designer file (e.g. if you are using c# this would be something like Form1.Designer.cs and can be found by expanding the corresponding form in the solution explorer), if you remove/comment the lines that say
this.Controls.Add(this.NameOfControl)
(NameOfControl is where you would see your declared controls name)
then you get the behaviour that you are seeing, the controls do not render as they are never added to the forms controls collection but as they are declared you will still see them in the properties drop down and wont be able to add another control with the same name.

Controls disappear in design mode using visual studio 2005

I'm working in a windows forms project using visual studio 2005 sp1, i've a lot of usercontrol that use for my user interface, yesterday i start to have problem with the designmode, when i open a usercontrol all control disappear, i check the design file and the definition of the controls is still there, when i run the app there is no problem.
I try to use this code inside the Load of every usercontrol
if (!this.DesignMode)
{
// Put some logic here
}
however, the problem persist. Today my usercontrol doesn´t display in designmode but either in runtime.
How can be posible? Any suggestion for that?
Regards,
Francisco.
I've had the same problem. Check the .Designer.cs file again and make sure the controls which disappeared are added to their parent controls. Like
this.pCheck.Controls.Add(this.pCheck_bLog_browse);
While checking the differences with previous revisions I figured out that for some reason these lines just disappeared.

Visual studio 2008 Professional Edition acting weird

I have a weird situation on a winform project.
I have user control (with 600 lines of code around) with a datagridview. I change de ColumnHeaderStyle of the font and save it. After I save the file I close it and open again, the changes were not saved (although the asterisk is dissapeared), because the ColumnHeaderStyle is back to the former value. This is driving me crazy because I cannot change any visual thing in the Designer.
Any clue?
Thanks in advance.
I've had occasional very strange behaviour with VS2008 developing WinForms apps too. Mostly designers that won't display (even though nothing has changed), but I've had cases of disappearing controls, too (and hence compilations that won't complete since code then refers to controls that are no longer being created). All very irritating.
Assuming that you've done all the standard things, like Cleaning the solution (on the Solution's context menu), deleting all the relevant Bin and Obj folders (no idea why this would cures VS weirdnesses, but it sometimes does) and rebuilding (ensuring that the Designer for your user control is closed when you rebuild)...
... you might try looking through the designer code for some strange 'bonus' controls that apparently have nothing to with you.
In one particularly intractable case, I eventually noticed some controls with names like Button_01, Button_02, etc, whose origin I couldn't identify. They were being defined but not instantiated, and not being added to any controls collections, and I just deleted all references to them.
When I recompiled, they didn't come back, and VS was behaving itself again.
I can't explain it, but it worked that time, and I offer it as an example of VS gremlins that seem to have rather irrational solutions.
Maybe it was just a strange planetary arrangement that did it, I guess I'll never know.

Why does my VB6 IDE loses its buttons and menu items?

I still have to use the VB6 IDE.
Unfortunately every time I start the IDE one of the buttons of the toolbar disappears. Almost always it's the Run button which goes first. Sometimes also items from the menu bar or the context menus are missing.
I have to reset the toolbars almost every time I start the IDE (Which is quite often during a typical work day). Recently I bought an IDE plugin which modifies the menu bar and requires a restart after every reset of the menu bar. (Otherwise it would crash)
I could live with just the resetting, but the restart is really annoying.
Is there something I can do?
To solve this problem:
Unload all add-ins.
Right-click on a toolbar and select the Customize... menu.
For each toolbar click the Reset... button (6 times in total).
Reload the add-ins.
For me action 3 was enough.
cf. MZTools faq (thanks to Andrea Bonafini), but these steps are originally from MSDN
It sounds like you recently bought a bad add-in. Can you get your money back? Every time I've had problems with disappearing controls in the IDE it has been due to a bad add-in. You can find out which one it is by disabling them, one by one, each time using the IDE for a while, then re-enable it and disable the next one, until the problem stops.
I still use one problematic add-in. It exhibits behavior similar to yours in that it makes the run button disappear. I avoid the problem by only loading the add-in when I need it, use it (it formats code), then I immediately unload it. If you don't use the functionality of the add-in that often, this could be an acceptable workaround.
Yea, i have this same problem with one of the add-in. But if you reset it. Shut the IDE down and open it back up again without doing anything, the IDE shouuld be able to retain the previous clean setup.
It's just guest, but:
Each graphical element on IDE (like button) is kind of resource (i.e. GDI handle).
Maybe your VB app doesn't manage these resources good enough and after sometime VB IDE cannot redraw elements like buttons (run is used often).
Also, maybe some IDE add-in is in conflict with some other add-in/application and breaks something -- I have this problem with Clip-X and MZ-Tools.
I had a similar problem when I was setting up the IDE to use for the first time, though it may not be helpful if you've been using the same IDE for a while. When I first started using the IDE, I would modify the toolbars and then close the IDE. When prompted if I wanted to save the open file I always said No, since the file was just a dummy file I was using to open the IDE with. Turns out the IDE was saving the toolbar preferences with that file, so they never got saved.
Try opening a file, customizing the UI, saving the file, then closing without modifying the code. This was the solution for me.
I've tracked down the problem and as suggested it was an add-in.
The problem went away as soon as I disabled the Visual Basic 6 Resource Editor.
How to restore your VB6 IDE without reinstalling:
Run Regedit
Find the entry for Visual Basic 6.0
Export your settings in case things
go wrong
Delete the 'UI' setting
Run VB and you will have your popup
menus back
The 'Find' button disappeared from my VB6 toolbar forcing me to select the Edit menu to use Find. I had two add-ins enabled: vbCodePrint and ResourceEditor; so I did away with both of them, turned VB6 off and back on, then put both add-ins back in and my button returned.
If you're still using the VB6 IDE, and I do amongst others, then this problem is not likely to have gone away. I use VB6 in Windows 10, and the problem is still there. But it doesn't affect me anymore.
I have had this problem a few years into using VB5 and VB6. Today, if I start VB6 directly, it may work fine the first time, but buttons will go missing the second time -- ALWAYS.
My solution, which I developed from day one:
Do whatever needs to be done to restore all your buttons. Save the Visual Basic 6.0 registry settings to a file, as suggested previously, and only keep the UI entry. Sometimes, you have to exit VB6 for it to post changes to the registry. So if this doesn't work the first time, try exiting before saving the settings.
I use my own program to launch VB6, which automatically copies my VB6 registry backup back into the registry -- by calling "RegEdit.exe /S D:\VB\IDE_Fix.reg" -- before I launch the IDE . This works every single time, and requires no action on my part.
If you read this, that means you are a programmer. You can make this work by yourself.
Mike
Reinstall,clean registry and update with SPacks etc....

Resources