Visual Studio
"Neil Cawse" <[email protected]>
| Newsgroups | gmane.comp.gnu.dotgnu.developer |
|---|---|
| Message-ID | <AD5227CC61948542858F505100BC7FB01A8D1E@Server.burlington.geotab.com> |
A new version of the Visual Studio project overlay is available for pnetlib at http://pnet.homelinux.org/downloads.htm It has been tested against the latest cvs. There are a set of patches that still need to be committed before pnetlib will compile in Visual Studio. The changes are minor. Maciek and Gopal - feel free to change anything as it suits you for your Win32 install. Let me know if you need any help Readme follows; Microsoft Visual Studio 2003 Compatible Solution files. This is work in progress..! Quick start: ********* 1) Install a development tool that supports the Visual Studio 2003 file formats eg. Microsoft Visual Studio 2003 Microsoft Visual Studio 2005 Express (currently free download http://lab.msdn.microsoft.com/express/) SharpDevelop (open source http://www.icsharpcode.net/OpenSource/SD/) 2) Download and install tortoisecvs (http://www.tortoisecvs.org/) 3) Right click on the desktop and select "CVS Checkout" 4) In the CVSROOT textbox, enter ":ext:anoncvs-9YpCmyJ0EDq0d/[email protected]:/cvsroot/dotgnu-pnet" and in the Module textbox enter "pnetlib" or "." if you want all the pnet modules. 5) After all the files have downloaded, copy this overlay directory tree into your pnetlib directory. 6) Double click the .sln file in the pnetlib directory to open the solution. 7) Hitting run should build and run a System.Windows.Forms test application running against pnetlib. Notes and troubleshooting: ******************** 1) Running pnetlib in Visual Studio is a useful tool for debugging and testing compatibility on Windows. 2) The current solution is tested to work against the cvs as at 3 Nov 04. 3) As files change and are updated in cvs, these could be added to your solution. 4) Because the Visual Studio build environment is currently not compatible with the pnet build process, certain "prebuilt" files are included with this overlay. These files allow the build to happen with the minimum of effort however they are *always out of date*! The recommend practise is to install Cygwin (http://www.cygwin.com) and build pnet and pnetlib using the native build mechanism. This will then create the up to date files that are in turn automatically used by this solution. 5) The following files are thus out of date unless you use the proper build procedure: csunit/TestVersion.cs OpenSystem.Platform/Types.cs Xsharp/xlib.cs all resources any files that have not been added to the project. 6) Almost all of the pnetlib dll's are included in the solution, so it is big and cumbersome. In order to reduce the load and build time, remove from the solution the projects you dont want to build. The following minimum is required to build a System.Windows.Forms application: Accessibility runtime System System.Windows.Forms System.Drawing System.Drawing.Win32 7) Unfortunately it is improssible to replace mscorlib when running pnet - so the project is running using the Microsoft mscorlib but everything else is from pnetlib (including System). 8) It is possible to get System.Windows.Forms to build and run using X Windows on Windows. However pnet uses a "custom" string marshalling to try for extra speed that avoids the copying associated with normal marshalling, however it wont work with the Microsoft runtime. The result is that the strings appear garbled. 9) The following conditional compilation constants are used: DEBUG;TRACE;NON_ECMA;CONFIG_REFLECTION;CONFIG_RUNTIME_INFRA; CONFIG_EXTENDED_NUMERICS;CONFIG_DEBUG_LINES;CONFIG_REMOTING; CONFIG_SERIALIZATION;CONFIG_REFLECTION_EMIT;CONFIG_COM_INTEROP; CONFIG_CODEDOM;CONFIG_CRYPTO;CONFIG_X509_CERTIFICATES; CONFIG_PERMISSIONS;CONFIG_POLICY_OBJECTS; CONFIG_EXTENDED_DIAGNOSTICS;CONFIG_WIN32_SPECIFICS; CONFIG_ISOLATED_STORAGE;CONFIG_COMPONENT_MODEL; CONFIG_COMPONENT_MODEL_DESIGN;CONFIG_SSL 10) The following specific warnings are surpressed: 649;169;67;659 11) Not all the samples and a few other dll's do not yet have projects. 12) Any comments/suggestions please email neilcawse at geotab dot com. 13) The projects are compiled with en_US resources only