.NET Equivalent of an Applet?

G

Guest

Does the .NET framework provide any equivalent of an applet?

I've under Winforms Hosted in IE - but Security is a major headache.

Is there a way to bypass these security headaches? Can I sign the control,
etc. etc?
 
T

Tom Shelton

Does the .NET framework provide any equivalent of an applet?

I've under Winforms Hosted in IE - but Security is a major headache.

Is there a way to bypass these security headaches? Can I sign the control,
etc. etc?

As Mattias suggested there is silverlight - which has the advantage of
being cross platform, there is even a port underway for linux, known
as moonlight. The biggest problem with silverlight, is really that it
is so new - there aren't a lot of controls for it (that could have
changed by now, the last time I lookes was about 3 or 4 months ago),
and so unless your doing media work, it might not be up to what you
need to do.

The other option is the xbap - or xml browser application. They can
be hosted inside of an iframe in an asp or html page. xbap's are
click once applications that run inside of a sandbox, which is there
biggest problem. Right now, that sandbox, IMHO, is way to
restrictive. It is supposedly going to loosen over time, but right
now it really depends on what you want to do and who your audience is
that should be the determining factor.

So, describe what you want the applet to do (in a general sense), and
maybe you might get a better, more specific answer :)
 
G

Guest

You mean a Java applet?

Have you looked at Silverlight?

Ya silverlight comes close - but unfortunately it requires yet another
runtime. <sigh>

Also the tools don't seem to be production quality?

I guess silverlight is Microsoft's answer?
 
G

Guest

As Mattias suggested there is silverlight - which has the advantage of
being cross platform, there is even a port underway for linux, known
as moonlight. The biggest problem with silverlight, is really that it
is so new - there aren't a lot of controls for it (that could have
changed by now, the last time I lookes was about 3 or 4 months ago),
and so unless your doing media work, it might not be up to what you
need to do.

I basically want to deploy an application via the browser. The
application needs to send and receive state information continously from
a central server.

I could use AJAX for this type of thing, but I have not found the
reliablity to be there (i.e. 8 hour work days).

The other option is the xbap - or xml browser application. They can
be hosted inside of an iframe in an asp or html page. xbap's are
click once applications that run inside of a sandbox, which is there
biggest problem. Right now, that sandbox, IMHO, is way to
restrictive. It is supposedly going to loosen over time, but right
now it really depends on what you want to do and who your audience is
that should be the determining factor.

So true - the sandbox is much too restrictive. It would be nice to be
able to make a network connection back to the host with our a security
exception!
So, describe what you want the applet to do (in a general sense), and
maybe you might get a better, more specific answer :)

I'm building a client which talks to a central server. The client
controls the state of the user on the server side. When the server
detects that the user is in a particular state... and has a particular
piece of work for the user, the server will send the work to the client.

Couple issues:

1. The information must be transmitted to the client ASAP (i.e. no
delay!)

2. Application must be deploy via a web browser.

If this were a desktop app, this would be a piece of cake... but because
it's in a browser, I'm struggling with the technological limitations.

Here are the technologies I looked at:

1. Java
2. .NET WinForms Control - Too much security
3. Silverlight - Too new, yet another runtime
4. Flash/Flex - no skills
5. AJAX - don't think it's reliable enough and requires polling which
seems to cause issues with IE

Users will be intranet users - but I won't be able to change too many
security settings, so I'm stuck with the basic IE settings.

So I was hoping .NET would have something equivalent to Java Applets /
Java Web Start which has a decent set of permissions...but I guess not?
 
T

Tom Shelton

I basically want to deploy an application via the browser. The
application needs to send and receive state information continously from
a central server.

I could use AJAX for this type of thing, but I have not found the
reliablity to be there (i.e. 8 hour work days).


So true - the sandbox is much too restrictive. It would be nice to be
able to make a network connection back to the host with our a security
exception!


I'm building a client which talks to a central server. The client
controls the state of the user on the server side. When the server
detects that the user is in a particular state... and has a particular
piece of work for the user, the server will send the work to the client.

Couple issues:

1. The information must be transmitted to the client ASAP (i.e. no
delay!)

2. Application must be deploy via a web browser.

If this were a desktop app, this would be a piece of cake... but because
it's in a browser, I'm struggling with the technological limitations.

Here are the technologies I looked at:

1. Java
2. .NET WinForms Control - Too much security
3. Silverlight - Too new, yet another runtime
4. Flash/Flex - no skills
5. AJAX - don't think it's reliable enough and requires polling which
seems to cause issues with IE

Users will be intranet users - but I won't be able to change too many
security settings, so I'm stuck with the basic IE settings.

So I was hoping .NET would have something equivalent to Java Applets /
Java Web Start which has a decent set of permissions...but I guess not?

Hmmm, sounds like an XBAP is almost perfect... The big problem that
you would have to overcome is the security restrictions on network
communication. Off the top of my head, the way to overcome this would
depend on if you were going to use .NET 3.0 or .NET 3.5 :) If in 3.0,
then you could write a simple asp.net page, that you could
periodically request from the server that could esentially pull data
from the server and return it to you - it could even be a serialized
object, as long as it is xml serialization (or xaml). One word of
warning on this approach - if you plan on displaying web content in a
frame control in 3.0 in an xbap hosted inside of an iframe, forget
about it.

In 3.5, you can actually use WCF web services from an XBAP. Still
sort of a polling method, but maybe a little cleaner. Personally, I
think they should do like they do in java and allow you to open a
connection back to your server of origin with a socket....
 
P

Patrice

This would left you with :
- Java

You may want also to post about the ogrinal security problem you have but
if I remember you can cojnect with the originating site but not with third
party sites...
 
R

Rad [Visual C# MVP]

Ya silverlight comes close - but unfortunately it requires yet another
runtime. <sigh>

Also the tools don't seem to be production quality?

I guess silverlight is Microsoft's answer?

Alas, there's no getting away from runtimes. Every solution requires a
runtime:

- Flash
- Applets (Java JRE)
- Silverlight
- XBAP (.NET Framework 3)
 
G

Guest

Alas, there's no getting away from runtimes. Every solution requires a
runtime:

- Flash
- Applets (Java JRE)
- Silverlight
- XBAP (.NET Framework 3)

True, but Flash and Applets have been around for ages. .NET already has a
runtime (the framework) ... so I'm surprised it's not included in the base
framework itself, but it's yet another installation.
 
G

Guest

In 3.5, you can actually use WCF web services from an XBAP. Still
sort of a polling method, but maybe a little cleaner. Personally, I
think they should do like they do in java and allow you to open a
connection back to your server of origin with a socket....

My thoughts exactly! Without the ability to open a socket to the origin
server, it really limits the type of browser applications one can build.

Polling is fine for some stuff, but for application which need instant
notification (and the ability to scale), polling sucks.

Thanks for the information about XBAP... I'll take a look at it :)
 
G

Guest

This would left you with :
- Java

You may want also to post about the ogrinal security problem you have
but if I remember you can cojnect with the originating site but not
with third party sites...

Supposed with .NET Winform controls you could connect to the origin site,
but I was never able to get it working unless the origin site was
localhost! If it's an intranet, or even 127.0.0.1 IP it would throw an
security exception. I had to give my .NET control full trust before it
would work.

Yes, I think Java is the most viable solution - I'm surprised with .NET's
comparisons with Java, Microsoft hasn't stepped upto the plate this area
(browser applets/browser launched applications).
 
T

Tom Shelton

My thoughts exactly! Without the ability to open a socket to the origin
server, it really limits the type of browser applications one can build.

Polling is fine for some stuff, but for application which need instant
notification (and the ability to scale), polling sucks.

Thanks for the information about XBAP... I'll take a look at it :)

Here is a white paper on the wpf sandbox. It might give you a more
general feeling as to what you can and can't do, and if an XBAP is
right for you.... I'm actually creating an XBAP for my current
project, and to do what I want, I had to make it full trust. Which in
this particular case, isn't an issue - but, if you intend it for
internet consumption, then it isn't really a viable option.

http://msdn2.microsoft.com/en-us/library/Aa480229.aspx
 
R

Rad [Visual C# MVP]

True, but Flash and Applets have been around for ages. .NET already has a
runtime (the framework) ... so I'm surprised it's not included in the base
framework itself, but it's yet another installation.

I'm guessing you're referring to Silverlight. I guess in the next OS
it will come built into the OS (unless of course people go to court
challenging the competitiveness!)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top