Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


http-call syns ej i loggen på IIS servern

Postades av 2004-08-24 14:08:32 - Daniel Rytterqvist, i forum c++, Tråden har 2 Kommentarer och lästs av 851 personer

Jag skriver ett program i Borland C som sparas på en stand-alone-PC med MiniOS7
(i7188EA http://www.icpdas.com/products/7188/i-7188ea.htm)

Jag vill göra ett http-call till min Win2000 IIS server.
Första http-callet syns i loggen men inte nästkommande. Varför?

Gör http-call med följande programrad;
sprintf(OutBuf,"GET /test/default.asp?id=%d&sendcount=%d HTTP/1.0 \n\n\0",
port ,sendcount);

Varje gång jag stänger av min i7188EA och sätter på den igen så syns det i loggen, precis som att den inte släpper riktigt. Lika dant om jag väntar en lång stund så fungerar det igen.

Noterar samma problem om jag gör samma sak via Explorern. Första http-callet registreras men inte nästkommande såvida jag inte öppnar en ny explorer eller trycker Ctrl + F5. Mitt program kräver att samtliga http-call registreras. Vad göra?


Svara

Sv: http-call syns ej i loggen på IIS servern

Postades av 2004-08-24 15:51:33 - Niklas Jansson

Exakt hur fungerar resten?
För det där är ju bara för att lägga strängen i OutBuf.

Kan det inte vara så att bufferten inte flushas, på något sätt?
Tyvärr var det så länge sen jag använde C för att komma ihåg vad det kan heta. Lite mer kod vill vi nog se.


Svara

Sv: http-call syns ej i loggen på IIS servern

Postades av 2004-08-24 16:31:58 - Daniel Rytterqvist

Hej Niklas!

Skickar med funktionen jag använder för att göra själva http-anropet.
Vet inte om du får något ut av koden eftersom den är skriven för ett speciellt operativsystem MiniOS7, men uppskattar verkligen ditt engagemang!

/Daniel




SocketSend(int port) {
char OutBuf[1023];
int err, client;
extern unsigned char MacAddress[];

RefreshWDT();
client=SocketPreparationFunction();
RefreshWDT();
SocketConnectionFunction(client);
GetMac(MacAddress);
/*1 + MAC-address (numeric), Port, Value, SendCount */
/* sprintf(OutBuf,"GET /vcbs/default.asp?id=%d&sendcount=%d HTTP/1.1 \n\n\0", port ,sendcount);*/
sprintf(OutBuf,"1%03d%03d%03d%03d%03d%03d;%d;%d;%d\n\r", MacAddress[0], MacAddress[1], MacAddress[2], MacAddress[3], MacAddress[4], MacAddress[5], port, sent[port], sendcount);
err = writesocket( client, OutBuf, strlen(OutBuf));
Print("[No %d] Sending value %d on port %d. Send string:%sSend confirmation:%d\n\r", sendcount, sent[port], port, OutBuf, err);
sendcount++;
Print("Close socket\n\r\n\r");
closesocket(client);
Nterm();
}

int SocketPreparationFunction() {
int client, err=0;
Print("Prepare Socket\n\r");

/***************************************
* mandatory Network Environment *
***************************************/
err = Ninit(); /* initiate host environment */
if (err < 0) {
Print("Ninit() failed! error %d\n\r", err);
return err;
}

err = Portinit("*"); /* initiate network device */
if (err < 0) {
Print("Portinit() failed! error %d\n\r", err);
Nterm();
return err;
}

err = client = socket(PF_INET, SOCK_STREAM, 0); /* TCP/IP */
if (client < 0) {
Print( "Can't create socket! error %d\n\r", err );
Nterm();
return err;
}

/* addressing for master socket */
Print("Addressing for master socket\n\r");
memset( &sin, 0, sizeof(sin) ); /* bzero is a unix system call */
sin.sin_family = AF_INET;
sin.sin_addr.s_addr = inet_addr(ipaddr);
sin.sin_port = htons(SERVICE);

return client;
}

SocketConnectionFunction(int client) {
unsigned long t1;
int ConnectSuccess;
int cntConnectFail=0;
extern unsigned char MacAddress[];
extern unsigned char NewIP[];
extern unsigned char NewMask[];
extern unsigned char NewGateway[];

SOCKET_NOBLOCK(client);

ConnectSuccess=0;
while(ConnectSuccess==0){
t1=*TimeTicks;
if (connect(client, (struct sockaddr *)&sin, sizeof(sin))) { /* on success return 0 */
extern int errno;
unsigned cnt=0;
Print("Create socket\n\r");
if(errno==EINPROGRESS){
#define ConnectTimeout 4000
while(*TimeTicks-t1<ConnectTimeout){
RefreshWDT();
YIELD();
CheckInports();
Print("Socket connect trials \r[%u] ",++cnt);
if(SOCKET_ISOPEN(client)){
ConnectSuccess=1;
break;
}
}
if (!ConnectSuccess){
Print("Connect %d failed. Remote server is not available. time=%lu ms,state=%d\n\r",cntConnectFail++,*TimeTicks-t1,connblo[client].state);
if (cntConnectFail==3) {
GetMac(MacAddress);
GetIp(NewIP);
GetMask(NewMask);
GetGateway(NewGateway);
sprintf(Message,"i7188EA Remote server not available\n\rMAC (hex): %02x:%02x:%02x:%02x:%02x:%02x\n\rMAC (1 + numeric): 1%03d%03d%03d%03d%03d%03d\n\rIP: %d.%d.%d.%d\r\nMask: %d.%d.%d.%d\r\nGW: %d.%d.%d.%d", MacAddress[0], MacAddress[1], MacAddress[2], MacAddress[3], MacAddress[4], MacAddress[5], MacAddress[0], MacAddress[1], MacAddress[2], MacAddress[3], MacAddress[4], MacAddress[5], NewIP[0], NewIP[1], NewIP[2], NewIP[3], NewMask[0], NewMask[1], NewMask[2], NewMask[3], NewGateway[0], NewGateway[1], NewGateway[2], NewGateway[3]);
SMTPfunction(Message); /* Send mail */
}
}
}
else {
Print("Connect %d failed (Return 1): %d,time=%lu ms\n\r", cntConnectFail++,errno,*TimeTicks-t1);
if (errno==-15) return 1; /* Meaning what? */
else return 1;
}
}
}
Print("\n\rConnect success, time=%lu ms\n\r",*TimeTicks-t1);
if (cntConnectFail>3) {
GetMac(MacAddress);
GetIp(NewIP);
GetMask(NewMask);
GetGateway(NewGateway);
sprintf(Message,"i7188EA connection problem\n\rMAC (hex): %02x:%02x:%02x:%02x:%02x:%02x\n\rMAC (1 + numeric): 1%03d%03d%03d%03d%03d%03d\n\rIP: %d.%d.%d.%d\r\nMask: %d.%d.%d.%d\r\nGW: %d.%d.%d.%d\n\r%d failed conn.", MacAddress[0], MacAddress[1], MacAddress[2], MacAddress[3], MacAddress[4], MacAddress[5], MacAddress[0], MacAddress[1], MacAddress[2], MacAddress[3], MacAddress[4], MacAddress[5], NewIP[0], NewIP[1], NewIP[2], NewIP[3], NewMask[0], NewMask[1], NewMask[2], NewMask[3], NewGateway[0], NewGateway[1], NewGateway[2], NewGateway[3], cntConnectFail);
SMTPfunction(Message); /* Send mail */
}
}


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 616
27 953
271 709
5 697
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies