Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
Right now I'm looking for a way to securely transfer a file between a client and a server in c#. I've looked around a bit and I can't seem to find exactly what I'm looking for. Basically, I'm looking preferably for a library, if not that a technique I can do this. It is worth bearing in mind I have to do both the client and the server for this. The language I'm using is c# so everything will either be on windows or using mono.
About library, you can take a look at WinSCP .NET Assembly.
It's a simple wrapper around WinSCP and you can easily implement a small but fully functional FTP/SFTP client over it.
It seems you need not one, but two things.
A server to act as a storage place for files to be uploaded to and downloaded from
Code to help your code interact with the aforementioned server.
For the server, I'd suggest an FTP server. You can either setup your own or pay a 3rd-party provider to host one for you. So that the FTP server is accessed securely, you'll want to specify FTPS or SFTP protocols for the connections it accepts. Both of these provide encrypted end-to-end communication channels between the client and the server.
Windows Server includes and FTP server. It supports FTPS, but it does not support SFTP. If you want/need to use SFTP, there are 3rd-party FTP servers available for Windows that support it.
Regarding code to access the server, there are numerous .NET libraries available. You can build it from scratch using .NET, or you can buy software components, such as ChilKat or EnterpriseDT. I have had a good experience using both. There are others available, I'm sure.
There is probably no need to reinvent what will turn out to be a pretty expensive wheel.
Related
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 1 year ago.
Improve this question
I have a complex legacy software which is a C# WinForms application, recently upgraded to .NET Framework 4.7.2 and added with a WCF REST API for external communication.
This application requires certain files on the disk, certain partitions needs to be available (such as a D: drive) and so forth (due to a lot of hardcoded file management etc). The app also requires a license USB dongle and a big SDK framework installed on the PC.
Now we would like to run several instances of this application in one server and get results out from it via its REST API. Is there any way we can do this? I guess several virtual machines would work, but is there any other way, Docker maybe?
Docker is out. As a commenter stated, Docker is not designed to mimic real hardware. See this comparison for more information.
I suggest a traditional Windows virtual machine and something like Hyper-V USB Passthrough.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I know that there are a lot of threads talking about this topics but please let me discuss my problem in some details.
In our project, we are using a lot of devices (Cameras, Printers, Fingerprint devices, Smartcard readers) in desktop applications and we have already C# components that are developed to deal with these devices using their SDKs.
The problem now is that we are moving into web development and we are supposed to convert our WPF desktop applications into ASP.NET MVC web applications and also we should use our existing components for the devices.
The possible solutions to deal with devices from web .Net application are:
Using ActiveX (Which is dead or will die soon and it required some COM experience and very hard to develop).
Using Silverlight (Also, is dead or will die soon and it is very limited such that we can not add reference to existing C# components).
Using Java Applets (which require some Java experience and we will rewrite existing c# components in Java).
Is there any other solution so that we can deal with devices from ASP.NET MVC application over Intranet?
You can write browser extensions for Chrome, Firefox, and Edge (soon). I'm not sure how much code reuse you'll get across the browsers if you need to target them all, and I'm not sure of the extent to which you can run arbitrary code to connect to devices from your extensions, but it's something you should look into. You can then have your browser extensions communicate with your webpages to pass the necessary data.
Your users would need to install the extension for their browser to receive the functionality.
You can still distribute small "helper" applications that are based on a pared down version of your current WPF applications. These would perform the device access, and communicate directly back to your web server. The web site would serve as the interface.
This would allow you to leverage your existing device communication code. On the downside, it requires a separate install on the client, which means one more thing for the user to do and one more thing to keep updated.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I have already created my server in System.Net.WebSockets and now after transferring it between machines I had noticed Windows Server 2008 is not supported, are there any other implemetations which support an X509Certificate as authentication and would require minimal conversation.
I have been googling for this in the past 2 hours but haven't found anything meaningful, just a collection of poorly written, poorly documented libraries that throw exceptions on the regular, specifically SuperSocket, the server implementation of which seems to be complete buggy bull.
Could anyone post some sample client code from a decent library? I am growing desperate.
Frameworks include:
SignalR
XSockets
Super WebSocket
Alchemy WebSockets
Fleck
More options available via the realtime web tech guide
I know it is a little bit late, but I created a WebSocket C# implementation and it may be interesting for somebody.
There is also:
https://github.com/sta/websocket-sharp - sharp implements RFC6455 and is very popular amongst Unity3d developers
https://github.com/StackExchange/NetGain/ - stackoverflow's implementation of RFC6455
SignalR provides you a great way to add real-time features to your application. Under the hood, it uses either Web Sockets, Server-sent events, Long Polling or Forever Frames based on what the client and the server support. The coming version, scheduled to be released in the coming weeks, will support client-side (X509Certificate) certificates. You can refer to the following links for more details:
http://www.asp.net/signalr
https://github.com/SignalR/SignalR/wiki
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I was recently sent this link to Statsd which would be an interesting tool for us to monitor various aspects of our product, but it would be a hard-sell for us because of the PHP and non-Windows toolset. (This question asks about installing this on Windows, without an answer...)
Can anyone recommend Windows / .Net toolsets that might provide similar low-overhead monitoring of systems? Within reason, paying for a toolset should not be a problem.
I did find this microsoft page that looks quite interesting, but let's be honest, it does not have as many cool graphs that show the kind of thing that would be nice to have as an end-result :)
Your experiences and thoughts on direction would be appreciated: I think our ultimate goal would be 'wall-boards' e.g. large screens cycling through several key graphs or views so the whole team could understand and monitor some key metrics of the products we are supporting. Our client uses SQL Server Reporting Services for this, but their reports seem to be mostly statistical and very little graphical.
I've ported Graphite to Windows. It was pretty easy to do this. I've issued a pull request to the main project. I hope it will get merged. Until then, you find the fork under:
https://github.com/stephanstapel/carbon
Graphite installation requires some additional steps I published here:
http://www.s2-industries.com/wordpress/2012/12/running-graphite-on-windows/
Why not run Graphite in a Linux VM on top of a windows server? You get the full support of the graphite community, while being completely hosted on windows.
If you were wanting to replicate statsd, I would create a Windows service listening via UDP on a specific port. With a fairly open database schema, you could mimic its low-friction fluidity. That would take care of statsd and Carbon, the data collector piece of Graphite. You would then need to write a management tool that analyzes and presents the data in place of Graphite.
I would, for this reason, encourage you to just take the Linux route. Otherwise, you'd be fighting every battle the developers of those tools fought all over again.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I saw a similar question from 1.5 years ago and I am hoping there is something better.
I am looking for a totally managed C# implementation because I need it for the .NET Microframework, so I can't have .NET wrappers around C code.
Has anyone run into a good C# implementation of the SIP protocol. I should not that I don't care about codecs, mostly will be dealing with call control.
My own C# SIP stack is at sipsorcery. It's far from perfect but as far as the RFC3261 core SIP standard goes it should be pretty good and you can hook into that using only SIPSorcery.Core assembly. The server applications can be disregarded if you're looking at doing some specialised call control.
I am using the ozeki voip sip sdk. It is written in c# and it provides a complete SIP implementation with all RFCs. The others I have tried were partial implementations only and didn't work with all my PBXs.
If you wish to be familiar with SIP protocol implementation then I suggest you to first read more useful information about the background of the VoIP technology. I used some examples for my project as well. I have found this explanation earlier:
The Session Initiation Protocol (SIP) is an IETF-defined signaling protocol widely used for controlling communication sessions such as voice and video calls over Internet Protocol. SIP helps in establishing communication sessions which involve various media types such as audio, video, or collaborative multimedia.
I mean, SIP protocol is very important to use when we would like to build an audio or video based application. (For example: Ozeki VoIP SIP SDK is appropriate to create SIP VoIP call services.)
The info derives from this webpage: http://voip-sip-sdk.com/p_304-sip-protocol-implementation-voip.html. I always use this website because this SDK has the best documentation which is plain and transparent to understand it.
This .NET SIP SDK is probably the most comprehensive.