I am writing an ActiveX control using Visual C++ 6. My control
registers its version using AfxOleRegisterControlClass().
http://msdn.microsoft.com/library/de...ntrolclass.asp
The control is packaged into a cab file and I add it to a web page
using the <OBJECT> tag along with the version, e.g.
CODEBASE=[url]#Version=2,1,4121,1 The problem I am having is that I
want to assign a version to the control where one of the version digits
exceeds 255 (it is the control's build number, that's why it is so
large).
According to the documentation, the four-digit version consists of a
two-digit major version and a two-digit minor version. In my example,
"2, 1" is the major version and "4121, 1" is the minor version. When
calling AfxEnableControlContainer(), the two digits of the major
version are combined into a single 16-bit WORD, and same with the minor
version, so each version has a maximum value of 65535. Therefore each
of the four digits has a max value of 255.
However, this page says that the major and minor version is each
specified by a DWORD.
http://msdn.microsoft.com/workshop/delivery/download/overview/managing.asp#mngver_spec
And according to this .NET page: "Version numbers are stored as a
128-bit number that is logically partitioned into four 32-bit numbers.
This means that each of the four parts can be any number in the range
zero to 65,536."
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndotnet/html/managevers.asp
Is this something that was changed in Visual Studio .NET? Does anyone
have any experience with this issue?
Thanks
Faz