[mono-vb] WG: Microsoft.VisualBasic namespace

Jochen Wezel jwezel@compumaster.de
Mon, 7 Jun 2004 12:19:02 +0200


This is a multi-part message in MIME format.

------_=_NextPart_001_01C44C78.DB4A72B6
Content-Type: text/plain;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

How MS did it?
1. Is it a just-in-time-wrapping in the compiler of a defined list of =
methods to another namespace/module, in this case Strings.ChrW?
2. How they did it to ensure that VS.Net sees all those methods in =
Microsoft.VisualBasic, too? When I do some reflection on the =
Microsoft.VisualBasic class, I don't see anything of those methods =
directly in Microsoft.VisualBasic but only in =
Microsoft.VisualBasic.Strings and so on.

Very confused...
Jochen

> ______________________________________________=20
> Von: 	Jochen Wezel =20
> Gesendet:	Montag, 7. Juni 2004 12:12
> An:	'MonoVB'
> Betreff:	Microsoft.VisualBasic namespace
>=20
> Hi Rafael/Anirban,
>=20
> Here is a small test file which can compile with VBC but not with =
MBAS.
> Priority: low
>=20
> imports System
>=20
> class ebbes
> shared sub Main()
>=20
>         Console.WriteLine(Microsoft.VisualBasic.Strings.ChrW(89)) =
'works fine :)
>         Console.WriteLine(Microsoft.VisualBasic.ChrW(89)) 'how MS did =
it??? Is it a just-in-time-wrapping in the compiler of a defined list of =
methods to another namespace/module, in this case Strings.ChrW?
>=20
> end sub
> end class
>=20
> =
*************************************************************************=
***
> =
*************************************************************************=
***
> CompuMaster GmbH
> Agentur f=FCr moderne Kommunikation
> Jochen Wezel, Multimedia-Programmierung
> Rhein-Mosel-Stra=DFe 69, 56281 Emmelshausen, GERMANY
> Fon: +49 6747 95084-12 / Fax: +49 6747 95084-50
> http://www.compumaster.de eMail: jwezel@compumaster.de
> +++ Mitglied im DEUTSCHEN MULTIMEDIA VERBAND d m m v, =
http://www.dmmv.de +++
>=20
> =
*************************************************************************=
***
> Unsere aktuellen AGBs befinden sich auf unserer Website im Bereich
> "Rechtliches"
> =
*************************************************************************=
***
>=20
> Diese eMail enth=E4lt vertrauliche und/oder rechtlich gesch=FCtzte =
Informationen.
> Wenn Sie nicht der richtige Adressat sind oder diese E-Mail =
irrt=FCmlich
> erhalten haben, informieren Sie bitte sofort den Absender und =
vernichten Sie
> diese Mail. Das unerlaubte Kopieren sowie die unbefugte Weitergabe =
dieser
> Mail ist nicht gestattet.
>=20
> This e-mail may contain confidential and/or privileged information. If =
you
> are not the intended recipient (or have received this e-mail in error)
> please notify the sender immediately and destroy this e-mail.
> Any unauthorized copying, disclosure or distribution of the material =
in this
> e-mail is strictly forbidden.
> =
*************************************************************************=
***
> =
*************************************************************************=
***
>=20

------_=_NextPart_001_01C44C78.DB4A72B6
Content-Type: text/html;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV=3D"Content-Type" CONTENT=3D"text/html; =
charset=3Diso-8859-1">
<META NAME=3D"Generator" CONTENT=3D"MS Exchange Server version =
6.5.6944.0">
<TITLE>WG: Microsoft.VisualBasic namespace</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P><FONT COLOR=3D"#0000FF" SIZE=3D2 FACE=3D"Arial">How MS did it?</FONT>

<BR><FONT COLOR=3D"#0000FF" SIZE=3D2 FACE=3D"Arial">1. Is it a =
just-in-time-wrapping in the compiler of a defined list of methods to =
another namespace/module, in this case Strings.ChrW?</FONT></P>

<P><FONT COLOR=3D"#0000FF" SIZE=3D2 FACE=3D"Arial">2. How they did it to =
ensure that VS.Net sees all those methods in Microsoft.VisualBasic, too? =
When I do some reflection on the Microsoft.VisualBasic class, I don't =
see anything of those methods directly in Microsoft.VisualBasic but only =
in Microsoft.VisualBasic.Strings and so on.</FONT></P>

<P><FONT COLOR=3D"#0000FF" SIZE=3D2 FACE=3D"Arial">Very =
confused&#8230;</FONT>

<BR><FONT COLOR=3D"#0000FF" SIZE=3D2 FACE=3D"Arial">Jochen</FONT>
</P>

<P><FONT SIZE=3D1 =
FACE=3D"Tahoma">______________________________________________ </FONT>

<BR><B><FONT SIZE=3D1 FACE=3D"Tahoma">Von: &nbsp;&nbsp;</FONT></B> <FONT =
SIZE=3D1 FACE=3D"Tahoma">Jochen Wezel&nbsp; </FONT>

<BR><B><FONT SIZE=3D1 =
FACE=3D"Tahoma">Gesendet:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT></B> =
<FONT SIZE=3D1 FACE=3D"Tahoma">Montag, 7. Juni 2004 12:12</FONT>

<BR><B><FONT SIZE=3D1 =
FACE=3D"Tahoma">An:&nbsp;&nbsp;&nbsp;&nbsp;</FONT></B> <FONT SIZE=3D1 =
FACE=3D"Tahoma">'MonoVB'</FONT>

<BR><B><FONT SIZE=3D1 =
FACE=3D"Tahoma">Betreff:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</FONT>=
</B> <FONT SIZE=3D1 FACE=3D"Tahoma">Microsoft.VisualBasic =
namespace</FONT>
</P>

<P><FONT SIZE=3D2 FACE=3D"Arial">Hi Rafael/Anirban,</FONT>
</P>

<P><FONT SIZE=3D2 FACE=3D"Arial">Here is a small test file which can =
compile with VBC but not with MBAS.</FONT>

<BR><FONT SIZE=3D2 FACE=3D"Arial">Priority: low</FONT>
</P>

<P><FONT SIZE=3D2 FACE=3D"Arial">imports System</FONT>
</P>

<P><FONT SIZE=3D2 FACE=3D"Arial">class ebbes</FONT>

<BR><FONT SIZE=3D2 FACE=3D"Arial">shared sub Main()</FONT>
</P>

<P><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
Console.WriteLine(Microsoft.VisualBasic.Strings.ChrW(89)) 'works fine =
:)</FONT>

<BR><FONT SIZE=3D2 =
FACE=3D"Arial">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; =
Console.WriteLine(Microsoft.VisualBasic.ChrW(89)) 'how MS did it??? Is =
it a just-in-time-wrapping in the compiler of a defined list of methods =
to another namespace/module, in this case Strings.ChrW?</FONT></P>

<P><FONT SIZE=3D2 FACE=3D"Arial">end sub</FONT>

<BR><FONT SIZE=3D2 FACE=3D"Arial">end class</FONT>
</P>

<P><FONT SIZE=3D2 FACE=3D"Courier =
New">********************************************************************=
********</FONT>

<BR><FONT SIZE=3D2 FACE=3D"Courier =
New">********************************************************************=
********</FONT>

<BR><FONT SIZE=3D2 FACE=3D"Courier New">CompuMaster GmbH</FONT>

<BR><FONT SIZE=3D2 FACE=3D"Courier New">Agentur f=FCr moderne =
Kommunikation</FONT>

<BR><FONT SIZE=3D2 FACE=3D"Courier New">Jochen Wezel, =
Multimedia-Programmierung</FONT>

<BR><FONT SIZE=3D2 FACE=3D"Courier New">Rhein-Mosel-Stra=DFe 69, 56281 =
Emmelshausen, GERMANY</FONT>

<BR><SPAN LANG=3D"fr"><FONT SIZE=3D2 FACE=3D"Courier New">Fon: +49 6747 =
95084-12 / Fax: +49 6747 95084-50</FONT></SPAN>

<BR><SPAN LANG=3D"de"></SPAN><A HREF=3D"http://www.compumaster.de"><SPAN =
LANG=3D"de"><U><FONT COLOR=3D"#0000FF" SIZE=3D2 FACE=3D"Courier =
New">http://www.compumaster.de</FONT></U></SPAN><SPAN =
LANG=3D"de"></SPAN></A><SPAN LANG=3D"de"></SPAN><SPAN =
LANG=3D"fr"></SPAN><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier =
New"> eMail: jwezel@compumaster.de</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier New">+++ Mitglied =
im DEUTSCHEN MULTIMEDIA VERBAND d m m v, </FONT></SPAN><A =
HREF=3D"http://www.dmmv.de"><SPAN LANG=3D"de"><U><FONT COLOR=3D"#0000FF" =
SIZE=3D2 FACE=3D"Courier =
New">http://www.dmmv.de</FONT></U></SPAN></A><SPAN LANG=3D"de"><FONT =
SIZE=3D2 FACE=3D"Courier New"> +++</FONT></SPAN>
</P>

<P><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier =
New">********************************************************************=
********</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier New">Unsere =
aktuellen AGBs befinden sich auf unserer Website im =
Bereich</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier =
New">&quot;Rechtliches&quot;</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier =
New">********************************************************************=
********</FONT></SPAN>
</P>

<P><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier New">Diese eMail =
enth=E4lt vertrauliche und/oder rechtlich gesch=FCtzte =
Informationen.</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier New">Wenn Sie nicht =
der richtige Adressat sind oder diese E-Mail irrt=FCmlich</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier New">erhalten =
haben, informieren Sie bitte sofort den Absender und vernichten =
Sie</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier New">diese Mail. =
Das unerlaubte Kopieren sowie die unbefugte Weitergabe =
dieser</FONT></SPAN>

<BR><SPAN LANG=3D"en-gb"><FONT SIZE=3D2 FACE=3D"Courier New">Mail ist =
nicht gestattet.</FONT></SPAN>
</P>

<P><SPAN LANG=3D"en-gb"><FONT SIZE=3D2 FACE=3D"Courier New">This e-mail =
may contain confidential and/or privileged information. If =
you</FONT></SPAN>

<BR><SPAN LANG=3D"en-gb"><FONT SIZE=3D2 FACE=3D"Courier New">are not the =
intended recipient (or have received this e-mail in error)</FONT></SPAN>

<BR><SPAN LANG=3D"en-gb"><FONT SIZE=3D2 FACE=3D"Courier New">please =
notify the sender immediately and destroy this e-mail.</FONT></SPAN>

<BR><SPAN LANG=3D"en-gb"><FONT SIZE=3D2 FACE=3D"Courier New">Any =
unauthorized copying, disclosure or distribution of the material in =
this</FONT></SPAN>

<BR><SPAN LANG=3D"en-gb"><FONT SIZE=3D2 FACE=3D"Courier New">e-mail is =
strictly forbidden.</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier =
New">********************************************************************=
********</FONT></SPAN>

<BR><SPAN LANG=3D"de"><FONT SIZE=3D2 FACE=3D"Courier =
New">********************************************************************=
********</FONT></SPAN>
</P>

</BODY>
</HTML>
------_=_NextPart_001_01C44C78.DB4A72B6--