venta: (Default)
[personal profile] venta
Help me, interwebs, you're my only hope...

Yesterday, my code compiled.
Today, it does not.
Specifically, the back-up I took when I stopped working last night compiled yesterday and does not today. This has happened to me before with the same (.NET, Managed C++) application - along comes Patch Tuesday and suddenly the formerly working code won't compile any more. Last time the only solution seemed to be rolling back the update.

I have this rather wormly-looking line in my app:

System::Windows::Forms::Keys keycode = (System::Windows::Forms::Keys) System::ComponentModel::TypeDescriptor::GetConverter(System::Windows::Forms::Keys::typeid)->ConvertFromString("F3")));

[*]

If you have an M$ key code, then getting a string representation of that is dead easy (keycode.ToString()). When you have the string, getting the key code out again requires, as far as I can tell, the above horror (cribbed from MSDN).

It could be made less horrible by whipping out all the namespace nonsense, but I've left that in for now for the avoidance of ambiguity.

Yesterday, it compiled, but 18 Windows updates later, and I get this:

1>c:\antix\svn\gdk_docs\tools\config\regapp\regapp\Form1.h(8636) : error C2248: '<PrivateImplementationDetails>{26B74265-9CDF-44A5-8878-90A25F9512EE}::__StaticArrayInitTypeSize=29' : cannot access private class declared in class '<PrivateImplementationDetails>{26B74265-9CDF-44A5-8878-90A25F9512EE}'
1> c:\windows\microsoft.net\framework\v2.0.50727\system.dll : see declaration of '<PrivateImplementationDetails>{26B74265-9CDF-44A5-8878-90A25F9512EE}::__StaticArrayInitTypeSize=29'
1> c:\windows\microsoft.net\framework\v2.0.50727\system.dll : see declaration of '<PrivateImplementationDetails>{26B74265-9CDF-44A5-8878-90A25F9512EE}'
1> This diagnostic occurred while importing type 'System::ComponentModel::TypeDescriptor ' from assembly 'System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.
1>


I don't understand that error message. It seems (to me) to be telling me something is private, but (a) it wasn't yesterday (b) the docs for all the relevant parts haven't changed and (c) I'm not entirely sure what exactly it thinks is private anyway.

Googling for the update numbers and the keys in the error message hasn't really turned up anything (though my google-fu is occasionally very weak). At present, I don't feel I've got much option but to roll back the updates and hope for the best.

I would, however, like to know what's going on and how to fix it. If anyone has the dimmest of lights to shed on this, I'd be most grateful.

[*] It doesn't really say "F3", it usually takes the text field of an object. I've just put a static string in there to try and reduce possible sources of error. So don't go suggesting I replace the entire string with "(Keys) 0x73"!


Update: Uninstalled one of the several .NET updates, rebuilt, and it compiled fine. Re-installed the update... and it compiled. Must have been a dodgy installation, or something getting out of synch in ways I don't understand.

Date: 2010-06-10 01:24 pm (UTC)
From: [identity profile] venta.livejournal.com
I'm approaching from the update-rollback direction for now, since I haven't managed any productive work yet today!

Profile

venta: (Default)
venta

December 2025

S M T W T F S
 123456
78910111213
14151617181920
212223 24252627
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Dec. 28th, 2025 07:14 pm
Powered by Dreamwidth Studios