Oversættelse fra C# aspx til Windows Form
HejJeg har noget kode som er lavet til C#, men beregnet til at køre på en hjemmeside.
Jeg kunne dog godt tænke mig, at få det til at køre som et alm. Windows program istedet, og vil høre om nogen kan oversætte det.
Min tanke er at alt output "bare" skal puttes i f.eks. en textbox.
Baggrund: LogMeIn er et fjernstyringsprogram som kan man kan fjernstyre pc'ere med. Når man skal hjælpe en bruger er det letteste at give kunden en PIN-kode, som kunden taster ind på www.logmein123.com. Derefter vil der være mulighed for den person som har givet pinkoden at fjernstyre pc'en.
Koden gør altså det, at den logger på den angivne LogMeIn Reach konto og kommer retur med denne PIN kode.
Kodeeksemplet kan findes her:http://logmeinwiki.com/wiki/Rescue:API/requestPINCode/C_Sharp_with_HttpWebRequest
Mere baggrund kan findes her: http://logmeinwiki.com/wiki/Rescue:API
Håbet for mig er, at ende op med en kode jeg kan lægge under en knap (Button) i en Windows Form i C#. Alt output går til en textbox i samme form.
Her er koden der ønskes oversat:
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Net" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%
string sEndpoint = "https://secure.logmeinrescue.com/API/"; //add actionName.aspx? for each action called
string sEmail = "some@email.com";
string sPwd = "secretPassword";
//set up the request
HttpWebRequest oReq = (HttpWebRequest)System.Net.WebRequest.Create(sEndpoint + "login.aspx" + "?email=" + sEmail + "&pwd=" + sPwd);
//create a cookie container to store the cookies for this session
oReq.CookieContainer = new CookieContainer();
//get the response
HttpWebResponse oResp = (HttpWebResponse)oReq.GetResponse();
string sResp = new StreamReader(oResp.GetResponseStream()).ReadToEnd();
Response.Write("Login result: " + sResp + "<br />"); //do something more elegant here
/*
//debug cookies
foreach (Cookie cook in oResp.Cookies)
{
Response.Write("Cookie:" + "<br />");
Response.Write("Name: " + cook.Name + " " + "Value: " + cook.Value + "<br />");
Response.Write("Domain: " + cook.Domain + "<br />");
Response.Write("Path: " + cook.Path + "<br />");
Response.Write("Port: " + cook.Port + "<br />");
Response.Write("Secure: " + cook.Secure + "<br />");
Response.Write("When issued: " + cook.TimeStamp + "<br />");
Response.Write("Expires: " + cook.Expires + " " + "Expired? " + cook.Expired + "<br />");
Response.Write("Don't save: " + cook.Discard + "<br />");
Response.Write("Comment: " + cook.Comment + "<br />");
Response.Write("Uri for comments: " + cook.CommentUri + "<br />");
Response.Write("Version: RFC " + cook.Version + "<br />");
// Show the string representation of the cookie.
Response.Write("String: " + cook.ToString());
}*/
//add cookies to cookie container
CookieContainer sessioncookie = oReq.CookieContainer;
//get the PINCode info
HttpWebRequest oReqPINCode = (HttpWebRequest)System.Net.WebRequest.Create(sEndpoint + "requestPINCode.aspx");
oReqPINCode.CookieContainer = sessioncookie;
HttpWebResponse oRespPINCode = (HttpWebResponse)oReqPINCode.GetResponse();
string sRespPINCode = new StreamReader(oRespPINCode.GetResponseStream()).ReadToEnd();
Response.Write("requestPINCode result: " + sRespPINCode + "<br />"); //do something more elegant here
%>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Rescue API requestPINCode Test</title>
</head>
<body>
</body>
</html>