Forum ‹ VB .Net ‹ Visual Basic is amazing
33 posts
• Page 1 of 2 • 1, 2
Visual Basic is amazing
Yeah, its pretty much my favorite language.
How can I use this for the serverside instead?
How can I use this for the serverside instead?
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
Should be as simple as setting up a VB.net project instead of the C# project in the serverside solution.
I'll try it out, and send you the results.Perhaps we'll add a VB.net solution as an example.
I'll try it out, and send you the results.Perhaps we'll add a VB.net solution as an example.
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
I tried this with the Nonoba API ages ago, it gave me an error about making calls to Microsoft.VisualBasic, which is required to run the project. Since it checks for what dlls are included...maybe add that to the list of permitted dlls?
Its frustrating for me as a Visual Basic programmer to have to use C#...thanks oliver
Its frustrating for me as a Visual Basic programmer to have to use C#...thanks oliver
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
Yea, i see that visual basic uses a helper assembly. I'll have to go over it and add the safe stuff to the whitelist.
Sometime during this week okay?
- Oliver
Sometime during this week okay?
- Oliver
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Thanks much Oliver!
My programming will go much faster when it is in a language I am familiar with.
My programming will go much faster when it is in a language I am familiar with.
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
Live feedback #1: Didn't have VB installed in visual studio. Setup won't boot from install discs. Installing VB.NET Express.
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Live feedback #2: Argh, haven't memorized VB syntax, need cheat sheet: http://aspalliance.com/625
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Live feedback #3: Really missing my VIM emulation from visual studio. VIEmu is the best!
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Live feedback #4: Compiled a game dll ( i think ) -- now... to test it!
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Live feedback #5: These are the issues the codescanner complains about.
Reference found to Microsoft.VisualBasic. You can only reference PlayerIO.GameLibrary.dll
MyVbGame.My.MyApplication..ctor(...) uses the non-allowed method: System.Void Microsoft.VisualBasic.ApplicationServices.ApplicationBase::.ctor()
MyVbGame.My.MyComputer..ctor(...) uses the non-allowed method: System.Void Microsoft.VisualBasic.Devices.Computer::.ctor()
MyVbGame.My.MyProject.m_ComputerObjectProvider is static -- Static fields are disallowed
MyVbGame.My.MyProject.m_AppObjectProvider is static -- Static fields are disallowed
MyVbGame.My.MyProject.m_UserObjectProvider is static -- Static fields are disallowed
MyVbGame.My.MyProject.m_MyWebServicesObjectProvider is static -- Static fields are disallowed
MyVbGame.My.MyProject..cctor() is static -- Static constructors are disallowed.
MyVbGame.My.MyProject.m_UserObjectProvider is of the non-allowed type: MyVbGame.My.MyProject/ThreadSafeObjectProvider`1<Microsoft.VisualBasic.ApplicationServices.User>
return type of MyVbGame.My.MyProject.get_User(...) is of the non-allowed type: Microsoft.VisualBasic.ApplicationServices.User
MyVbGame.My.MyProject.get_User(...) has varible of the non-allowed type: Microsoft.VisualBasic.ApplicationServices.User
MyVbGame.My.MyProject.get_User(...) uses the non-allowed method: T MyVbGame.My.MyProject/ThreadSafeObjectProvider`1<Microsoft.VisualBasic.ApplicationServices.User>::get_GetInstance()
MyVbGame.My.MyProject..cctor(...) uses the non-allowed method: System.Void MyVbGame.My.MyProject/ThreadSafeObjectProvider`1<Microsoft.VisualBasic.ApplicationServices.User>::.ctor()
MyVbGame.My.MyProject/MyWebServices.Create__Instance__(...) uses the non-allowed method: !!0 System.Activator::CreateInstance<T>()
MyVbGame.My.MyProject/MyWebServices.Dispose__Instance__(...) has argument/parameter of the non-allowed type: T&
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1.m_Context is of the non-allowed type: Microsoft.VisualBasic.MyServices.Internal.ContextValue`1<T>
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1.get_GetInstance(...) uses the non-allowed method: !0 Microsoft.VisualBasic.MyServices.Internal.ContextValue`1<T>::get_Value()
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1.get_GetInstance(...) uses the non-allowed method: !!0 System.Activator::CreateInstance<T>()
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1.get_GetInstance(...) uses the non-allowed method: System.Void Microsoft.VisualBasic.MyServices.Internal.ContextValue`1<T>::set_Value(!0)
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1..ctor(...) uses the non-allowed method: System.Void Microsoft.VisualBasic.MyServices.Internal.ContextValue`1<T>::.ctor()
MyVbGame.My.Resources.Resources.resourceMan is static -- Static fields are disallowed
MyVbGame.My.Resources.Resources.resourceCulture is static -- Static fields are disallowed
MyVbGame.My.Resources.Resources.resourceMan is of the non-allowed type: System.Resources.ResourceManager
MyVbGame.My.Resources.Resources.resourceCulture is of the non-allowed type: System.Globalization.CultureInfo
return type of MyVbGame.My.Resources.Resources.get_ResourceManager(...) is of the non-allowed type: System.Resources.ResourceManager
MyVbGame.My.Resources.Resources.get_ResourceManager(...) has varible of the non-allowed type: System.Resources.ResourceManager
MyVbGame.My.Resources.Resources.get_ResourceManager(...) has varible of the non-allowed type: System.Resources.ResourceManager
MyVbGame.My.Resources.Resources.get_ResourceManager(...) uses the non-allowed method: System.Void System.Resources.ResourceManager::.ctor(System.String,System.Reflection.Assembly)
return type of MyVbGame.My.Resources.Resources.get_Culture(...) is of the non-allowed type: System.Globalization.CultureInfo
MyVbGame.My.Resources.Resources.get_Culture(...) has varible of the non-allowed type: System.Globalization.CultureInfo
MyVbGame.My.Resources.Resources.set_Culture(...) has argument/parameter of the non-allowed type: System.Globalization.CultureInfo
MyVbGame.My.MySettings.defaultInstance is static -- Static fields are disallowed
MyVbGame.My.MySettings..cctor() is static -- Static constructors are disallowed.
MyVbGame.My.MySettings..cctor(...) uses the non-allowed method: System.Configuration.SettingsBase System.Configuration.SettingsBase::Synchronized(System.Configuration.SettingsBase)
MyVbGame.My.MySettings..ctor(...) uses the non-allowed method: System.Void System.Configuration.ApplicationSettingsBase::.ctor()
Reference found to Microsoft.VisualBasic. You can only reference PlayerIO.GameLibrary.dll
MyVbGame.My.MyApplication..ctor(...) uses the non-allowed method: System.Void Microsoft.VisualBasic.ApplicationServices.ApplicationBase::.ctor()
MyVbGame.My.MyComputer..ctor(...) uses the non-allowed method: System.Void Microsoft.VisualBasic.Devices.Computer::.ctor()
MyVbGame.My.MyProject.m_ComputerObjectProvider is static -- Static fields are disallowed
MyVbGame.My.MyProject.m_AppObjectProvider is static -- Static fields are disallowed
MyVbGame.My.MyProject.m_UserObjectProvider is static -- Static fields are disallowed
MyVbGame.My.MyProject.m_MyWebServicesObjectProvider is static -- Static fields are disallowed
MyVbGame.My.MyProject..cctor() is static -- Static constructors are disallowed.
MyVbGame.My.MyProject.m_UserObjectProvider is of the non-allowed type: MyVbGame.My.MyProject/ThreadSafeObjectProvider`1<Microsoft.VisualBasic.ApplicationServices.User>
return type of MyVbGame.My.MyProject.get_User(...) is of the non-allowed type: Microsoft.VisualBasic.ApplicationServices.User
MyVbGame.My.MyProject.get_User(...) has varible of the non-allowed type: Microsoft.VisualBasic.ApplicationServices.User
MyVbGame.My.MyProject.get_User(...) uses the non-allowed method: T MyVbGame.My.MyProject/ThreadSafeObjectProvider`1<Microsoft.VisualBasic.ApplicationServices.User>::get_GetInstance()
MyVbGame.My.MyProject..cctor(...) uses the non-allowed method: System.Void MyVbGame.My.MyProject/ThreadSafeObjectProvider`1<Microsoft.VisualBasic.ApplicationServices.User>::.ctor()
MyVbGame.My.MyProject/MyWebServices.Create__Instance__(...) uses the non-allowed method: !!0 System.Activator::CreateInstance<T>()
MyVbGame.My.MyProject/MyWebServices.Dispose__Instance__(...) has argument/parameter of the non-allowed type: T&
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1.m_Context is of the non-allowed type: Microsoft.VisualBasic.MyServices.Internal.ContextValue`1<T>
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1.get_GetInstance(...) uses the non-allowed method: !0 Microsoft.VisualBasic.MyServices.Internal.ContextValue`1<T>::get_Value()
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1.get_GetInstance(...) uses the non-allowed method: !!0 System.Activator::CreateInstance<T>()
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1.get_GetInstance(...) uses the non-allowed method: System.Void Microsoft.VisualBasic.MyServices.Internal.ContextValue`1<T>::set_Value(!0)
MyVbGame.My.MyProject/ThreadSafeObjectProvider`1..ctor(...) uses the non-allowed method: System.Void Microsoft.VisualBasic.MyServices.Internal.ContextValue`1<T>::.ctor()
MyVbGame.My.Resources.Resources.resourceMan is static -- Static fields are disallowed
MyVbGame.My.Resources.Resources.resourceCulture is static -- Static fields are disallowed
MyVbGame.My.Resources.Resources.resourceMan is of the non-allowed type: System.Resources.ResourceManager
MyVbGame.My.Resources.Resources.resourceCulture is of the non-allowed type: System.Globalization.CultureInfo
return type of MyVbGame.My.Resources.Resources.get_ResourceManager(...) is of the non-allowed type: System.Resources.ResourceManager
MyVbGame.My.Resources.Resources.get_ResourceManager(...) has varible of the non-allowed type: System.Resources.ResourceManager
MyVbGame.My.Resources.Resources.get_ResourceManager(...) has varible of the non-allowed type: System.Resources.ResourceManager
MyVbGame.My.Resources.Resources.get_ResourceManager(...) uses the non-allowed method: System.Void System.Resources.ResourceManager::.ctor(System.String,System.Reflection.Assembly)
return type of MyVbGame.My.Resources.Resources.get_Culture(...) is of the non-allowed type: System.Globalization.CultureInfo
MyVbGame.My.Resources.Resources.get_Culture(...) has varible of the non-allowed type: System.Globalization.CultureInfo
MyVbGame.My.Resources.Resources.set_Culture(...) has argument/parameter of the non-allowed type: System.Globalization.CultureInfo
MyVbGame.My.MySettings.defaultInstance is static -- Static fields are disallowed
MyVbGame.My.MySettings..cctor() is static -- Static constructors are disallowed.
MyVbGame.My.MySettings..cctor(...) uses the non-allowed method: System.Configuration.SettingsBase System.Configuration.SettingsBase::Synchronized(System.Configuration.SettingsBase)
MyVbGame.My.MySettings..ctor(...) uses the non-allowed method: System.Void System.Configuration.ApplicationSettingsBase::.ctor()
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Live update #6: The built in My object of VB.net does a bunch of stuff which we don't allow in our server cluster. Current approach is to strip it out.
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Live update #7: Got a vb dll running; now, to cleanup the mess i've made 
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Last update. Got derailed by something else.
Anyways: I just tested that vb games are now loaded both by the dev server and the production server.
The issue with vb games, is that VB.NET compiles special classes into the assembly (My) which
- Uses a bunch of stuff we don't allow on our server cluster
- References the Microsoft.VisualBasic assembly.
The solution we choose was to remove the My.* classes and the reference from the assembly, so it looks like any other .net assembly and only contains valid code for our server cluster.
In essence: You can make VB.NET games, just don't use the My classes or anything in the Microsoft.VisualBasic assembly.
We haven't build any extensive test games in VB, so i'm hoping to get some feedback from you about whether everything works...
This will go out in the next release, most likely on friday.
Anyways: I just tested that vb games are now loaded both by the dev server and the production server.
The issue with vb games, is that VB.NET compiles special classes into the assembly (My) which
- Uses a bunch of stuff we don't allow on our server cluster
- References the Microsoft.VisualBasic assembly.
The solution we choose was to remove the My.* classes and the reference from the assembly, so it looks like any other .net assembly and only contains valid code for our server cluster.
In essence: You can make VB.NET games, just don't use the My classes or anything in the Microsoft.VisualBasic assembly.
We haven't build any extensive test games in VB, so i'm hoping to get some feedback from you about whether everything works...
This will go out in the next release, most likely on friday.
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Amazing updates - just like being there!
-

Benjaminsen - .IO
- Posts: 808
- Joined: January 12th, 2010, 11:54 am
- Location: Denmark
Re: Visual Basic is amazing
Chris! GET TO WORK!
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Ohh but I am, practicing my mad PowerPoint skills!
-

Benjaminsen - .IO
- Posts: 808
- Joined: January 12th, 2010, 11:54 am
- Location: Denmark
Re: Visual Basic is amazing
My.Settings ought to be allowed, I've used that for local databases personally.
Thanks for doing this Oliver, you get a cookie or two.
Seriously, I'm considering mailing you a cookie.
Thanks for doing this Oliver, you get a cookie or two.
Seriously, I'm considering mailing you a cookie.
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
hahaha
I was seriously considering to quote the last 3 posts
Couldn't resist. Sue me
I was seriously considering to quote the last 3 posts
Oliver wrote:Chris! GET TO WORK!
Chris wrote:Ohh but I am, practicing my mad PowerPoint skills!
Cyclone103 wrote:Seriously, I'm considering mailing you a cookie.
Couldn't resist. Sue me
- Tsuken
- Posts: 41
- Joined: January 26th, 2010, 7:54 pm
Re: Visual Basic is amazing
Re: My.Settings:
Why? You don't have access to any app.config or other special configuration files for your game assembly. You have to compile settings into the game assembly.
Why? You don't have access to any app.config or other special configuration files for your game assembly. You have to compile settings into the game assembly.
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Okay, makes sense.
Will this be integrated for the Nonoba API as well eventually?
Will this be integrated for the Nonoba API as well eventually?
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
Re: Integrating into Nonoba API: I don't think so; the code scanning used in nonoba is a different beast, and it's harder there to just change stuff in the code at runtime.
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Darn.
Well, I guess at this point it doesn't matter as the new API basically does all that the Nonoba API did and more.
Well, I guess at this point it doesn't matter as the new API basically does all that the Nonoba API did and more.
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
Quick update -- I'm aware that the release didn't go out last Friday, we had some issues during testing that we're working out before we send it out. Very soon now.
-

Oliver - .IO
- Posts: 1136
- Joined: January 12th, 2010, 8:29 am
Re: Visual Basic is amazing
Okay, please post here and let me know so I can get started 
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
Downloading and preparing for my game, what kind of cookies do you like? Chocolate chip?
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
Cyanide. Together we can take over. 
-

Toby - Posts: 85
- Joined: January 14th, 2010, 4:01 pm
Re: Visual Basic is amazing
Okay Toby, I'll send you some cyanide cookies.
- Cyclone103
- Posts: 155
- Joined: January 18th, 2010, 6:47 pm
Re: Visual Basic is amazing
yum chocolate chip cookies.
What game are you making Cyclone? Or is it still a secret?
What game are you making Cyclone? Or is it still a secret?
- Tsuken
- Posts: 41
- Joined: January 26th, 2010, 7:54 pm
33 posts
• Page 1 of 2 • 1, 2