Witam,
Nie jestem w zielony w jako takim programowaniu. Większość języków pokrywa się swoimi komendami, ale są to prawdę mówiąc banały. Mój problem na pozór jest także banalny - uruchomienie programu (C#). W nim nie ma banalnych IF, While, COUT, NEXT, FOR.....Zaczyna się prawdziwe programowanie.
Jak to zmusić do zadziałania? Proszę o pomoc, bo się załamię [glowa]
Czy uruchomić to w konsoli? nie wiem, kompletnie nie mam pojęcia :(
//odczytanie parametrów podłączenia do socketa z rejestru
RegistryKey regKey = Registry.CurrentUser.CreateSubKey("Software\\COMARCH S.A.\\NOL3\\7\\Settings");
int nca_pasync = 0;
int.TryParse(regKey.GetValue("nca_pasync", "0").ToString(), out nca_pasync);
int nca_psync = 0;
int.TryParse(regKey.GetValue("nca_psync", "0").ToString(), out nca_psync);
int ncaset_pasync = 0;
int.TryParse(regKey.GetValue("ncaset_pasync", "0").ToString(), out ncaset_pasync);
int ncaset_psync = 0;
int.TryParse(regKey.GetValue("ncaset_psync", "0").ToString(), out ncaset_psync);
//otwarcie socketa synchronicznego
IPEndPoint ipEndSync = new IPEndPoint(IPAddress.Parse("127.0.0.1"), nca_psync);
Socket clientSockSync = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.IP);
clientSockSync.Connect(ipEndSync);
//komunikat Login
string loginReq = "<FIXML v=\"5.0\" r=\"20080317\" s=\"20080314\"><UserReq UserReqID=\"0\" UserReqTyp=\"1\" Username=\"BOS\" Password=\"BOS\"/></FIXML>";
byte[] loginReqByte = Encoding.ASCII.GetBytes(loginReq);
byte[] loginReqLen = BitConverter.GetBytes(loginReqByte.Length);
clientSockSync.Send(loginReqLen);
clientSockSync.Send(loginReqByte);
//odebranie potwierdzenia
byte[] responceData = new byte[4];
int receivedBytesLen = clientSockSync.Receive(responceData);
int responceDataLen = BitConverter.ToInt32(responceData, 0);
responceData = new byte[responceDataLen];
receivedBytesLen = clientSockSync.Receive(responceData);
string loginResponce = Encoding.ASCII.GetString(responceData);