none
Remote Assistance Tool in ASP.Net - Is it possible in .Net? RRS feed

  • Question

  • Hi,
    I have a requirement of developing a web based remote assistance tool for desktop support professionals. The support folks would remotely login via the web based tool and analyze the problem and chat with the users on specific issues.
    This needs to function similar like net meeting, pc anywhere, remote desktop, Control-F1 etc.
    Some of the reason why our customers dont want to use the existing products are
    • Connection speed is low hence Net Meeting software doesn't work out well - it's slow and performance is not upto expectations
    • With tools available in the market is that they have restrictions over which OS that it works with. The idea is to build the software right from scratch so that one can add support and provide updates later on in time.

    I am not sure whether this can be entirely developed in .Net. Would appreciate your thoughts on whether its possible and if so what could be the possible approaches to the same.



    -Sai
    Monday, May 26, 2008 7:43 AM

Answers

  • Sai,

     

    I would expect the implementation to be quite coupled to the operating system.  One way I would imagine this working is with recording Windows message, obvious in Windows operating systems.  Then replaying them remotely.

    Another way would be using API to find windows and controls, and so on.

     

    That said, there's no real reason why you couldn't define your own set of messages, and send them to some engine that has providers for each operating system, to drive the specific functionality for each solution.

     

    For such a generic system, I would expect the performance of the system to be generally not as good as off the shelf solutions.  To improve the speed you would have to ensure that the messages you send are of an optimal size, and all the work is done at the target system, rather than across the wire.

     

    I'm sure that this is possible, I doubt that it could be entirely completed within .NET, but certainly a large majority of operating systems would have the ability to run the .NET code. 

    To overcome any problems there, you could have the software run through web services, such that you could send an xml message to the service from any operating system.  The downside to this may be that the solution would not be as fast as directly using middle tier software.

     

    I hope this helps get your thoughts going, as there is plenty to consider before starting this project.  My thoughts though, are that off the shelf software is likely to be as good as this project that you're proposing, and with the small amount of knowledge you clearly have, I would also suggest that it would take you longer, and cost a lot more to do it yourself.

     

    Martin Platt.

     

    Monday, May 26, 2008 10:47 PM

All replies

  • Sai,

     

    I would expect the implementation to be quite coupled to the operating system.  One way I would imagine this working is with recording Windows message, obvious in Windows operating systems.  Then replaying them remotely.

    Another way would be using API to find windows and controls, and so on.

     

    That said, there's no real reason why you couldn't define your own set of messages, and send them to some engine that has providers for each operating system, to drive the specific functionality for each solution.

     

    For such a generic system, I would expect the performance of the system to be generally not as good as off the shelf solutions.  To improve the speed you would have to ensure that the messages you send are of an optimal size, and all the work is done at the target system, rather than across the wire.

     

    I'm sure that this is possible, I doubt that it could be entirely completed within .NET, but certainly a large majority of operating systems would have the ability to run the .NET code. 

    To overcome any problems there, you could have the software run through web services, such that you could send an xml message to the service from any operating system.  The downside to this may be that the solution would not be as fast as directly using middle tier software.

     

    I hope this helps get your thoughts going, as there is plenty to consider before starting this project.  My thoughts though, are that off the shelf software is likely to be as good as this project that you're proposing, and with the small amount of knowledge you clearly have, I would also suggest that it would take you longer, and cost a lot more to do it yourself.

     

    Martin Platt.

     

    Monday, May 26, 2008 10:47 PM
  • Thanks Martin for your prompt response.
    Well this application would be tied to the windows environment. I was also looking at products such as control-F1 from Computer associates. My thoughts also were the same of going in for off the shelf product rather than build one from scratch due to our lacqunae in the subject area. We have done anything like this in the past and hence was curious whether something like this has been tried out in .Net or not or is there an open source framework which targets this particular problem space.

    From what I gather from your response, there would be lot of low level unmanaged code that would need to be written to handle the underlying messages between the two systems coupled with the fact that the data that would be transferred would comprise of text, images, mouse positioning, resizing etc.

    -Sai
    Tuesday, May 27, 2008 3:56 AM
  • Hi Sai

    I am working same kind of project can you please help me oou if you have done this Remote Desktop Web Connection asp.net.

     

    Thanks

    Ved

    Monday, November 15, 2010 6:28 AM
  • If you were just doing some sort of messaging system then I see no problem.

    If you want to see and interact with the users desktop then there are serious issues with the browser sandbox.  You'd need some app which is installed locally on the client.

    With remote access it's one of those types of apps where there are off the shelf products which are likely to work out a lot less expensive than writing it yourself.  

    • Proposed as answer by naand Monday, February 27, 2012 12:33 PM
    • Unproposed as answer by naand Monday, February 27, 2012 12:33 PM
    Monday, November 15, 2010 11:45 AM
  • I used this code to call remote assistnc from asp.net....

     string remotAs = Environment.ExpandEnvironmentVariables(@"%SystemRoot%\system32\msra.exe");

                if (remotAs != null)
                {

                    Process.Start(remotAs);
                }

    Its only call the remote assistnc process... Actually we need the invitation... any one know about the .exe name of invitation window???

    Can i establish remote assistance invitation programmatically using asp.net(c#.net)?

    I just use msra.exe to call remote assistance.. But its only display the starting window of remote assistance.. Is there any way to get the .exe for remote assistance?

    I need to remotely monitor one of my network computer.. I can use remote desktop.. but it does not allow same username login at the same time...

    Any one help me please???????????


    • Edited by naand Monday, February 27, 2012 1:12 PM
    Monday, February 27, 2012 12:36 PM