i M.ÍLjƒ@C‚Å(@LúDM)ƒuƒ‰ƒEƒU
1 F
‚¨‚É‚¬‚è‚Ì‚Ì‚½‚ñ ŸqCUWFi42uI F
03/02/05 01:49 i M.ÍLjƒ@C‚Å(@LúDM)ƒuƒ‰ƒEƒUì‚è‚È‚³‚¢‚æ
2 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/02/05 01:50
2
ƒ„ƒ^[‰‚ɃQƒbƒg‚¾
>2 ‚¨‚ß
b‚±‚̔‚̓vƒƒOƒ‰ƒ€‚ðì‚él‚Ì‚½‚߂̔‚ł·B ‚Ç‚¤‚¼A‚²Ž©•ª‚Åì‚Á‚Ä‚‚¾‚³‚¢B
6 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/02/07 00:06
ˆÉ—\“Œ‚Z—Žqƒ{[ƒg•”‘†’ø“ú
@ ÈQÈ @i@LÍMjƒ@‚Ê‚é‚Û
‚ ‚È‚¾‚炯‚Å“r’†‚Å‚â‚é‹C‚È‚‚µ‚½‚à‚Ì Œ»ÝƒeƒLƒXƒg•\Ž¦‚Ü‚Å cursesŽg‚Á‚Ä‚é‚Ì‚Éwinsock‚àŽg‚Á‚Ä‚½‚è‚·‚é‚©‚ç(Œã‚Å’¼‚·‚‚à‚肾‚Á‚½) ’¼‚·‚È‚èCygwin‚Æ‚©‚‚©‚¤‚Ȃ肵‚È‚¢‚Æ“®‚©‚È‚¢‚¯‚Ç«
/* main.c */ #include <stdio.h> #include "get.h" #include "token.h" #include "viewer.h" struct ObjectFile ObjFile; struct VSCRIPTS *vsrpts; int main(int argc,char *argv[]){ char CacheFolder[]="./cache/"; unsigned char Done=1; getInit(); viewerInit(); while(Done){ getMain(argv[1],&ObjFile,CacheFolder); readdata(ObjFile.FName); vsrpts=tokenMain(); switch(viwerMain(vsrpts)){ case EXIT: Done=0; break; default : } } viewerExit(); exit(0); }
/* get.h */ #define MAXNUM 255 struct ObjectFile{ char *url; char Host[MAXNUM]; int nPort; char FPath[MAXNUM]; char FName[MAXNUM]; }; int getMain(char url[],struct ObjectFile *,char *); int UrlToken(char url[],struct ObjectFile *); int GetHostInfo(struct ObjectFile *); int DefinitionPort(struct ObjectFile *); int mstderr(int,struct ObjectFile *); void mstddebug(struct ObjectFile *);
/* get.c */ #include <stdio.h> #include <string.h> #include <stdlib.h> #include <sys/types.h> #include <windows.h> #include <winsock.h> #define RECVBUF 1024 #include "get.h" enum ERRID {ERR_URL,ERR_HOST,ERR_SOCKET,ERR_CONNECT,ERR_FDOPEN,ERR_FOPEN}; enum RET_VALUE {FAILED=-1,SUCCESS}; enum PROTOCOL {HTTP,FTP}; struct sockaddr_in target_server; char ClientName[]="GET"; float version=0.91; char *recvbuffer=NULL; int getInit(){ WORD wVersionRequested; WSADATA wsaData; wVersionRequested = MAKEWORD(1,1); WSAStartup(wVersionRequested, &wsaData); }
/* get.c‘±‚« */ int getMain(char url[],struct ObjectFile *ObjFile,char *CFolder){ FILE *fp; int i=0,flag=0; SOCKET s; char buf[MAXNUM],buffer,fflag[4],sfname[MAXNUM]; if(UrlToken(url,ObjFile)==FAILED) return(mstderr(ERR_URL,ObjFile)); if(GetHostInfo(ObjFile)==FAILED) return(mstderr(ERR_HOST,ObjFile)); DefinitionPort(ObjFile); if ((s=socket(AF_INET,SOCK_STREAM,0))<0) return(mstderr(ERR_SOCKET,ObjFile)); if (connect(s,(struct sockaddr *)&target_server,sizeof(target_server)) == -1) return(mstderr(ERR_CONNECT,ObjFile)); mstddebug(ObjFile); sprintf(sfname,"%s%s",CFolder,ObjFile->FName); strcpy(ObjFile->FName,sfname); if((fp=fopen(sfname,"wb+")) == NULL) return(mstderr(ERR_FOPEN,ObjFile)); sprintf(buf,"GET %s HTTP/1.0\r\nUser-Agent: %s/%f\r\nHost: %s:%d\r\n\r\n",ObjFile->FPath,ClientName,version,ObjFile->Host,ObjFile->nPort); send(s,buf,strlen(buf),0);
/* get.c‘±‚« */ while(recv(s,&buffer,1,0)==1){ if(!flag && (buffer=='\r' || buffer=='\n')){ fflag[i]=buffer; i++; if(!strcmp(fflag,"\r\n\r\n") || !strcmp(fflag,"\n\n") || i==4){ flag=1; continue; } }else{ i=0; memset(fflag,'\0',4); } if(flag) fwrite(&buffer,sizeof(char),1,fp); } printf("\nƒ_ƒEƒ“ƒ[ƒhŠ®—¹\n"); fclose(fp); close(s); } int DefinitionPort(struct ObjectFile *ObjFile){ struct servent *service; if(ObjFile->nPort == 0){ service = getservbyname("http","tcp"); if (service!=NULL) ObjFile->nPort=ntohs(service->s_port); else ObjFile->nPort=80; } target_server.sin_port = htons(ObjFile->nPort); return(SUCCESS); }
/* get.c‘±‚« */
int GetHostInfo(struct ObjectFile *ObjFile){
struct hostent *servhost;
servhost = gethostbyname(ObjFile->Host);
if (servhost==NULL) return(FAILED);
memset((char*)&target_server,0,sizeof(target_server));
target_server.sin_family = AF_INET;
memmove((char *)&target_server.sin_addr,servhost->h_addr,servhost->h_length);
return(SUCCESS);
}
int UrlToken(char url[],struct ObjectFile *ObjFile){
int itmp;
char *tmp,*tmp2,*tmp_host;
if(!strncmp(url,"
http:// ",7)) tmp=url+7;
else if(!strncmp(url,"
ftp:// ",6)) tmp=url+6;
else return(FAILED);
memset((char*)ObjFile,0,sizeof(struct ObjectFile));
ObjFile->url=strdup(url);
itmp=strchr(tmp,'/')-tmp;
tmp_host=(char *)malloc(itmp+1);
strncpy(tmp_host,tmp,itmp);
tmp_host[itmp]='\0';
if((tmp2=strrchr(tmp_host,':'))!=NULL){
*tmp2='\0';
ObjFile->nPort=atoi(tmp2+1);
}
/* get.c‘±‚« */ strcpy(ObjFile->Host,tmp_host); tmp=strchr(tmp,'/'); if(tmp[strlen(tmp)-1]=='/') strcat(tmp,"index.html"); strcpy(ObjFile->FPath,tmp); tmp2=strrchr(tmp,'/')+1; strcpy(ObjFile->FName,tmp2); return SUCCESS; } int mstderr(int t,struct ObjectFile *ObjFile){ switch(t){ case ERR_URL : printf("ERROR:•s“KØ‚ÈURL [%s]\n",ObjFile->url); break; case ERR_HOST : printf("ERROR:•s“K؂ȃzƒXƒg–¼ [%s]\n",ObjFile->Host); break; case ERR_SOCKET : printf("ERROR:Socket for server failed.\n"); break; case ERR_CONNECT : printf("ERROR:Connect failed.\n"); break; case ERR_FDOPEN : printf("ERROR:Can't fdopen.\n"); break; case ERR_FOPEN : printf("ERROR:Can't fopen.\n"); break; } return(FAILED); } void mstddebug(struct ObjectFile *ObjFile){ printf("URL\t\t:\t%s\n",ObjFile->url); printf("hostname\t:\t%s\n",ObjFile->Host); printf("port_num\t:\t%d\n",ObjFile->nPort); printf("path\t\t:\t%s\n",ObjFile->FPath); }
/* token.c */ #include <stdio.h> #include <stdlib.h> #include <string.h> #define BUF_LEN2 32768 #define TAGNAMESIZE 256 #define NELEMS(x) (sizeof(x)/sizeof(x[0])) #define DEF_NSC 10 #include "token.h" #include "vscript.h" enum KINDDOC {TAG,BEGINTAG,ENDTAG,DOC,COMMENT}; enum {OFF,ON}; enum { HTML,HEAD,TITLE,BODY,BR,CENTER,HR }; enum TAGTYPE {NEEDEND,NONEND}; typedef struct MODESTACK MODESTACK; struct MODESTACK{ int align; MODESTACK *prev; }*mstack_top=NULL; typedef struct TAGSTACK TAGSTACK; struct TAGSTACK{ int tagid; MODESTACK *mstack; TAGSTACK *prev; }*tstack_top=NULL;
/* token.c‘±‚« */ int nstack=0; int maxstack=0; struct TAGTABLE{ char name[TAGNAMESIZE]; unsigned char type; int bvss[5]; int evss[5]; }tagtable[]={ {"html" ,NEEDEND, {NON}, {NON} }, {"head" ,NEEDEND, {NON}, {NON} }, {"meta" ,NONEND, {NON}, {NON} }, {"title" ,NEEDEND, {NON}, {NON} }, {"body" ,NEEDEND, {VABLE,NON}, {VENABLE,NON} }, {"br" ,NONEND, {NEWLINE,NON}, {NON} }, {"center" ,NEEDEND, {ACENTER,NEWLINE,NON}, {NEWLINE,NON} }, {"hr" ,NONEND, {NEWLINE,DLINE,NEWLINE,NON}, {NON} }, {"blockquote" ,NEEDEND, {NON}, {NON} }, {"img" ,NONEND, {NON}, {NON} }, {"a" ,NEEDEND, {TBCOLOR,BUL,NON}, {TECOLOR,EUL,NON} }, {"h1" ,NEEDEND, {NEWLINE,NON}, {NEWLINE,NON} }, {"h2" ,NEEDEND, {NEWLINE,NON}, {NEWLINE,NON} }, {"h3" ,NEEDEND, {NEWLINE,NON}, {NEWLINE,NON} }, {"h4" ,NEEDEND, {NEWLINE,NON}, {NEWLINE,NON} }, {"h5" ,NEEDEND, {NEWLINE,NON}, {NEWLINE,NON} }, {"h6" ,NEEDEND, {NEWLINE,NON}, {NEWLINE,NON} }, {"font" ,NEEDEND, {NON}, {NON} }, {"pre" ,NEEDEND, {NON}, {NON} } };
/* token.c‘±‚« */ char data[BUF_LEN2]; struct VSCRIPTS tmp_scr={NULL,0,0,NULL,0,0}; void readdata(char *fname){ int i; char tmpbuf[BUF_LEN2],tmpbuf2[BUF_LEN2]; unsigned char fspace=OFF; FILE *fp; memset(data,'\0',BUF_LEN2); fp=fopen(fname,"r"); while(fgets(tmpbuf2,BUF_LEN2,fp)!=NULL){ nkfsub("s",tmpbuf2,tmpbuf); for(i=0;i<strlen(tmpbuf);i++){ if(tmpbuf[i]!='\t' && tmpbuf[i]!='\r' && tmpbuf[i]!='\n'){ if(tmpbuf[i]==' '){ if(fspace) continue; fspace=ON; }else if(fspace) fspace=OFF; sprintf(data,"%s%c",data,tmpbuf[i]); } } } fclose(fp); }
/* token.c‘±‚« */ char *l2u(char *src,char *tmp){ int i; for(i=0;src[i]!='\0';i++){ if((src[i]>='a') && (src[i]<='z')){ tmp[i]=src[i] - 0x20; }else tmp[i]=src[i]; } return(tmp); } int addscript(int tss){ int *tmpip; if(tmp_scr.vscripts==NULL){ if((tmp_scr.vscripts=(int *)malloc(sizeof(int)*DEF_NSC))==NULL){ fprintf(stderr,"err-test\n"); return 0; }else tmp_scr.maxscripts=DEF_NSC; }else if((tmp_scr.maxscripts-tmp_scr.nscripts)==0){ tmpip=(int *)realloc(tmp_scr.vscripts,sizeof(int)*tmp_scr.maxscripts*2); if(tmpip!=NULL){ tmp_scr.vscripts=tmpip; tmp_scr.maxscripts*=2; }else{ fprintf(stderr,"err-test\n"); return 0; } } tmp_scr.vscripts[tmp_scr.nscripts]=tss; tmp_scr.nscripts++;
/* token.c‘±‚« */ return(1); } void mstack_pop(){ MODESTACK *tmpmnode; if(mstack_top==NULL){ fprintf(stderr,"mstack is empty\n"); }else{ tmpmnode=mstack_top; mstack_top=mstack_top->prev; free(tmpmnode); } } MODESTACK *mstack_push(){ int j; MODESTACK *newmnode; if((newmnode=(MODESTACK *)malloc(sizeof(MODESTACK)))==NULL) return(NULL); if(mstack_top==NULL) newmnode->prev=NULL; else newmnode->prev=mstack_top; mstack_top=newmnode; return(newmnode); } int tstack_pop(){ int i; TAGSTACK *tmptnode;
/* token.c‘±‚« */ if(nstack==0){ fprintf(stderr,"tstack is empty\n"); }else{ if(tstack_top[nstack-1].mstack!=NULL) mstack_pop(); if(tstack_top[nstack-1].tagid<NELEMS(tagtable)){ fprintf(stderr,"tpop :%s\n",tagtable[tstack_top[nstack-1].tagid].name); for(i=0;tagtable[tstack_top[nstack-1].tagid].evss[i]!=NON;i++){ if(addscript(tagtable[tstack_top[nstack-1].tagid].evss[i])==0){ fprintf(stderr,"test1\n"); return(0); } } }else fprintf(stderr,"tpop \n"); nstack--; } } int tstack_push(int id){ int j; MODESTACK *newmnode; TAGSTACK *tmptp; if(tstack_top==NULL){ if((tstack_top=(TAGSTACK *)malloc(sizeof(TAGSTACK)*DEF_NSC))==NULL){ fprintf(stderr,"err-test\n"); return 0; }else maxstack=DEF_NSC; }else if((maxstack-nstack)==0){ tmptp=(TAGSTACK *)realloc(tstack_top,sizeof(TAGSTACK)*maxstack*2); if(tmptp!=NULL){
/* token.c‘±‚« */ tstack_top=tmptp; maxstack*=2; }else{ fprintf(stderr,"err-test\n"); return 0; } } tstack_top[nstack].tagid=id; for(j=0;tagtable[id].bvss[j]!=NON;j++){ if(addscript(tagtable[id].bvss[j])==0){ fprintf(stderr,"test1\n"); return(0); } if(tagtable[id].bvss[j]>=ALEFT && tagtable[id].bvss[j]<=ARIGHT){ if((newmnode=mstack_push())==NULL){ fprintf(stderr,"test2\n"); return(0); }else tstack_top[nstack].mstack=newmnode; }else tstack_top[nstack].mstack=NULL; } if(tagtable[id].bvss[0]==NON) tstack_top[nstack].mstack=NULL; if(id<NELEMS(tagtable)) fprintf(stderr,"tpush:%s ",tagtable[id].name); else fprintf(stderr,"tpush "); nstack++; return(1); } struct VSCRIPTS *tokenMain(){ char *tmp,*tmp2,buffer[BUF_LEN2],**tmpcpp; unsigned char mode=TAG,fcomment=OFF;
/* token.c‘±‚« */ int k; memset(buffer,'\0',BUF_LEN2); for(tmp=data;*tmp!='\0';tmp++){ switch(*tmp){ case '<': if(!strncmp(tmp,"<!--",4)) fcomment=ON; if(strlen(buffer)>0){ if(addscript(DOCT)==0) return(NULL); if(tmp_scr.maxdocs==0){ if((tmp_scr.doctable=(char **)malloc(sizeof(char *)*DEF_NSC))==NULL){ fprintf(stderr,"err-test\n"); return 0; }else tmp_scr.maxdocs=DEF_NSC; }else if((tmp_scr.maxdocs-tmp_scr.ndocs)==0){ tmpcpp=(char **)realloc(tmp_scr.doctable,sizeof(char *)*tmp_scr.maxdocs*2); if(tmpcpp!=NULL){ tmp_scr.doctable=tmpcpp; tmp_scr.maxdocs*=2; }else{ fprintf(stderr,"err-test\n"); return 0; } } if(addscript(tmp_scr.ndocs)==0) return(NULL); tmp_scr.doctable[tmp_scr.ndocs]=strdup(buffer); tmp_scr.ndocs++; } memset(buffer,'\0',BUF_LEN2);
/* token.c‘±‚« */ mode=TAG; break; case '>': { int i,j=0; char buffer2[TAGNAMESIZE]; if(buffer[0]=='/'){ mode=ENDTAG; j=1; }else mode=BEGINTAG; for(i=0;i<NELEMS(tagtable);i++){ if((!strncmp(tagtable[i].name,buffer+j,strlen(tagtable[i].name))) || (!strncmp(l2u(tagtable[i].name,buffer2),buffer+j,strlen(tagtable[i].name)))){ break; } } if(fcomment) mode=COMMENT; if(i<NELEMS(tagtable)){ if(mode==ENDTAG) tstack_pop(); else if(mode==BEGINTAG){ if(tagtable[i].type==NEEDEND){ if(!tstack_push(i)){ fprintf(stderr,"err\n"); return(NULL); } fprintf(stderr,"%s\n",buffer); }else{ for(j=0;tagtable[i].bvss[j]!=NON;j++){
/* token.c‘±‚« */ if(addscript(tagtable[i].bvss[j])==0) return(NULL); } } } } } memset(buffer,'\0',BUF_LEN2); mode=DOC; fcomment=OFF; /* ƒ^ƒO–{‘̂ƃIƒvƒVƒ‡ƒ“‚ÌØ‚èo‚µ */ break; default : if(fcomment){ char *tmp3; for(tmp2=tmp,tmp3=strchr(tmp2,'>');;tmp3=strchr(tmp2,'>')){ if(!strncmp(tmp3-2,"-->",3)){ strncpy(buffer,tmp,tmp3-tmp); tmp=tmp3-1; break; }else tmp2=tmp3+1; } }else{ memset(buffer,'\0',BUF_LEN2); if(mode!=DOC) tmp2=strchr(tmp,'>'); else tmp2=strchr(tmp,'<');
/* token.c‘±‚« */ strncpy(buffer,tmp,tmp2-tmp); tmp=tmp2-1; } } } return(&tmp_scr); }
/* token.h */ typedef struct TAGVAL TAGVAL; struct TAGVAL{ int ntag; char *tmp; }; struct VSCRIPTS{ int *vscripts; int nscripts; int maxscripts; char **doctable; int ndocs; int maxdocs; }; void readdata(char *); struct VSCRIPTS *tokenMain();
/* viwer.c */ #include <ncurses.h> #include <sys/types.h> #include <time.h> #include "token.h" #include "viewer.h" #include "vscript.h" enum {BEGIN,END}; enum {OFF,ON}; int fbline(); int fwrline(); unsigned char writable=OFF; int writex=0,writey=0; unsigned char align=ALEFT; WINDOW *stdscr; int viwerMain(struct VSCRIPTS *vscripts){ int i,j,nline,c,x=0,y=0; for(i=0;i<vscripts->nscripts;i++){ switch(vscripts->vscripts[i]){ case VABLE: writable=ON; for(j=i+1,nline=0;j<vscripts->nscripts;j++){ if(vscripts->vscripts[j]==NEWLINE) break;
/* viwer.c‘±‚« */ if(vscripts->vscripts[j]==DOCT){ nline+=strlen(vscripts->doctable[vscripts->vscripts[i+1]]); j++; } } break; case NEWLINE: fbline(); for(j=i+1,nline=0;j<vscripts->nscripts;j++){ if(vscripts->vscripts[j]==NEWLINE) break; if(vscripts->vscripts[j]==DOCT){ nline+=strlen(vscripts->doctable[vscripts->vscripts[j+1]]); j++; } } if(align==ALEFT) writex=0; else if(align==ACENTER){ if(nline>COLS){ }else{ writex=(COLS-nline)/2; } } break; case ALEFT: align=ALEFT; break; case ACENTER: align=ACENTER; break;
/* viwer.c‘±‚« */ case ARIGHT: align=ARIGHT; break; case TBCOLOR: attron(COLOR_PAIR(1)); break; case TECOLOR: attroff(COLOR_PAIR(1)); break; case BUL: attron(A_UNDERLINE); break; case EUL: attroff(A_UNDERLINE); break; case DOCT: if(writable==ON){ mvwaddstr(stdscr,writey,writex,vscripts->doctable[vscripts->vscripts[i+1]]); writex+=strlen(vscripts->doctable[vscripts->vscripts[i+1]]); } i++; break; case DLINE: fwrline(); break; default : } if(writey==LINES-1) break; }
/* viwer.c‘±‚« */ wrefresh(stdscr); keypad(stdscr,TRUE); wtimeout(stdscr,10); while(c!='q'){ move(y,x); c=wgetch(stdscr); switch(c){ case KEY_UP : if(y-1>=0) y--; break; case KEY_DOWN : if(y<(LINES-1)) y++; break; case KEY_LEFT : if(x-1>=0) x--; break; case KEY_RIGHT : if(x<(COLS-1)) x++; break; default : } } return(EXIT); } void viewerInit(){ /*setenv("TERM","kterm-color",1);*/ initscr(); start_color(); noecho();
/* viwer.c‘±‚« */ cbreak(); stdscr = newwin(LINES,COLS,0,0); init_pair(1,COLOR_CYAN,COLOR_BLACK); scrollok(stdscr, TRUE); } void viewerExit(){ endwin(); } int fwrline(){ wmove(stdscr,writey,0); whline(stdscr,'-',COLS); return(0); } int fbline(){ writey++; return(0); }
/* viwer.h */ enum {EXIT}; int viewerMain(struct VSCRIPTS *); void viewerExit(); void viewerInit();
/* vscript.h */ #if !defined(VSCRIPT) #define VSCRIPT enum {NON=-1}; /* ”ÔŒ¢ */ enum {VABLE,VENABLE}; /* ƒhƒLƒ…ƒƒ“ƒg•\Ž¦‚Ì—LŒø‰»E–³Œø‰» */ enum {CCABLE=2,CCENABLE}; /* §Œä•¶Žš‚Ì—LŒø‰»E–³Œø‰» */ enum {NEWLINE=4}; /* ‰üs */ enum {ALEFT=5,ACENTER,ARIGHT}; /* •\Ž¦ˆÊ’u‚Ì•ÏX */ enum {TBCOLOR=8,TECOLOR}; /* F•t‚¯ */ enum {BUL=10,EUL}; /* ƒAƒ“ƒ_[ƒ‰ƒCƒ“ŠJŽnI—¹ */ enum {DOCT=12}; /* ƒhƒLƒ…ƒƒ“ƒgƒe[ƒuƒ‹‚ÌŽQÆ */ enum {DLINE=13}; /* Œrü‚ðˆø‚ */ #endif
CC = gcc -g TARGET = bokashi OBJS = token.o get.o viewer.o nkf.o main.o LIB = -lncurses -ltermcap -lwsock32 all: $(TARGET) $(TARGET):$(OBJS) $(CC) -o $@ $(OBJS) $(LIB) %.o:%.c $(CC) -c $< -o $@ clean : rm -f *.o *.exe
ƒIƒiƒj[ƒ\[ƒX‚È‚Ì‚Å ‚à‚¤“‚¢‚ ‚肳‚Ü‚¾ ‚ ‚Æ‚Í1‚ª‚Ç‚¤‚É‚©‚·‚é‚©‚àCŒî‚¤ŒäŠú‘ÒII ƒIƒ‰ƒnÀƒbƒeƒNƒ‹ƒ_DDD
>8-37 sine
ƒ\[ƒX“Š‚°‰³”ÞB
(@LúDM)ƒmƒ‚â‚®‚â‚®
41 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/02/24 19:26
Windows native ‚È w3m like ƒuƒ‰ƒEƒU ‚ÍŽù—v‚ª‚ ‚é‚ÆŽv‚¤
42 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/02/24 19:29
IIIIIIbbbbbbbbbbbbbIIIIIIIIIIIIIIIIIIIIIIIII cccccccccccc @@@@@@@@@@@@@@@@@@@@@@^ÜSÜR. @@@@@@@@@@@@@@@@@@@ @^@@@˜¦@ ..S @@@@@@@@@@@@@@@@@@@^@@ B l@@@ j @@@@@@@@@@@@@@@@@@iB...B_ .ƒm BSB...˜¦ @@@@@@@@@@@@@@@@@ @(@_@. @.. É@@ ) @@@@@@@@@@@@@@@@@@/@@@@ @ @/ @@@@@@@@@@@@@@@@ @/@ƒm ‚µ@@@/ @@@@ ŽOPPPP_@@@@/@j@‚Æ@ @/ @@@@@/@@QQQQ|@.@ /@@@@@@/ @@@@ /@@„@@@@@|@@ /@@@ @@/ @@@@/@@/@Ü@@Ü |@@/@@@@@/ @@@@|Q/---(E)--(E) |@ /@ @@@/ @@@@|@(6@@@@‚Â@ b /@ ..@@/@^ ‚Ç‚¤‚â‚çPPPPPPPPP @ @ @|@@@@QQQ b/@ @.@/@@ƒ‰´‚Í‘B‚·‚é‚炵‚¢IIIIIII @@@@_@@_Q/@^@/@@@/@@@@_QQQQQQQQQ @ƒVƒR@@_QQ_^@@ /@@@/ @@@@@@/@@@@ _@/ .@@/ @ƒVƒR@@i@j@ß@ß/_T ˜¦.../ @@@@@@_ R¤ i@ / @¼// @@@@@@@ _@R /@¼// @@@@@@@ i@_‚Â@@/ @@@@@@@@|@ |‚n›ƒm _ @@@@@@@@|@ |@@@@_ _ @@@@@@@@|@ j@@@@@|@ j @@@@@@@ /@/@@ @@ /@/ @@@@@@ /@/@@ @ @ ¾ @@@@@@ ¾
44 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/04/03 23:26
¡Œã‚ÉŠú‘Òage
E‘€ì•û–@ƒJƒXƒ^ƒ}ƒCƒY‰Â”\ E‘¼ƒuƒ‰ƒEƒU‚Ńy[ƒW^ƒŠƒ“ƒNæ‚ð•\Ž¦‚·‚邱‚Æ‚ª‰Â”\ E‘¼ƒ\ƒtƒg‚Ńy[ƒWã^ƒŠƒ“ƒNæ‚̉摜‚≹Šy‚È‚Ç‚ðĶ‰Â”\ Eƒe[ƒuƒ‹•\Ž¦^ƒtƒŒ[ƒ€•\Ž¦‚ª‰Â”\ Eƒy[ƒW“Ç‚Ýž‚Ý’†‚ÌŽb’è•\Ž¦‚ª‰Â”\ @ƒe[ƒuƒ‹•`‰æ‚ª—‚ÞꇂÍÝ’è‚ÅŽb’è•\Ž¦‚©Š®‘S•\Ž¦‚©‘I‘ð EƒuƒbƒNƒ}[ƒN‚ɑΉž EIE‚̃uƒbƒNƒ}[ƒN‚ɑΉž EŽÀ‚̓^ƒuƒuƒ‰ƒEƒUiCtrl+1,2,3 ...‚Ń^ƒuØ‚è‘Ö‚¦‚Æ‚©j Evim‚Ý‚½‚c•ªŠ„^‰¡•ªŠ„‚ª‰Â”\ EŒŸõƒc[ƒ‹•t‚«iF3‚ÅŒŸõƒL[‚ƃJƒXƒ^ƒ}ƒCƒY‰Â”\‚ÈŒŸõƒGƒ“ƒWƒ“ @ˆê——‚ªo‚Ä‚«‚ÄŒŸõ‚·‚é‚ÆŒ‹‰Ê‚ð•Êƒ^ƒu•\Ž¦‚Æ‚©j Ecookie‚ɑΉž Essl‚ɑΉž EJavaScript‘ΉžiƒCƒxƒ“ƒg‚Íonclick‚Æ‚©‚¾‚¯‚Æ‚©j ‚Ü‚ Å’áŒÀ‚±‚Ì‚‚ç‚¢‚Ì‹@”\‚Í—~‚µ‚¢‚Èi‚—
ƒ}ƒXƒI‚Ì‘‚©‚ç—‚Q‚O‚O‚R`‹A‹½`
ƒ}ƒXƒI~—Õ’†IIIIIIIIIIIIIIIIIIIIIIIIIIIIII
@@@@@@@@@@@@@@@@@@@@@@^ÜSÜR.
@@@@@@@@@@@@@@@@@@@ @^@@@˜¦@ ..S
@@@@@@@@@@@@@@@@@@@^@@ B l@@@ j
@@@@@@@@@@@@@@@@@@iB...B_ .ƒm BSB...˜¦
@@@@@@@@@@@@@@@@@ @(@_@. @.. É@@ )
@@@@@@@@@@@@@@@@@@/@@@@ @ @/
@@@@@@@@@@@@@@@@ @/@ƒm ‚µ@@@/
@@@@ ŽOPPPP_@@@@/@j@‚Æ@ @/
@@@@@/@@QQQQ|@.@ /@@@@@@/
@@@@ /@@„@@@@@|@@ /@@@ @@/
@@@@/@@/@Ü@@Ü |@@/@@@@@/
@@@@|Q/---(E)--(E) |@ /@ @@@/
@@@@|@(6@@@@‚Â@ b /@ ..@@/@^ ‚Ç‚¤‚â‚çIIIIIIIIII
@ @ @|@@@@QQQ b/@ @.@/@@ƒ‰´‚Í‘B‚·‚é‚炵‚¢IIIIIII
@@@@_@@_Q/@^@/@@@/@@@@_QQQQQQQQQ
@ƒVƒR@@_QQ_^@@ /@@@/
@@@@@@/@@@@ _@/ .@@/
@ƒVƒR@@i@j@ß@ß/_T ˜¦.../
@@@@@@_ R¤ i@ / @¼//
@@@@@@@ _@R /@¼//
@@@@@@@ i@_‚Â@@/
@@@@@@@@|@ |‚n›ƒm _
@@@@@@@@|@ |@@@@_ _
@@@@@@@@|@ j@@@@@|@ j
@@@@@@@ /@/@@ @@ /@/
@@@@@@ /@/@@ @ @ ¾
@@@@@@ ¾
>>1 >>2 >>3 >>4 >>5 >>6 >>7 >>8 >>9 >>10 >>11
@@ ÈQÈ @@i@@OO jƒ ‚Ê‚é‚ÛiOOj
50 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/05/10 21:04
‚Ê‚é‚Û
@@@ @ÈQÈ Ëß.°@(@@OO j ƒ‚±‚ê‚©‚ç‚à–l‚ð‰ž‰‡‚µ‚ĉº‚³‚¢‚ËiOOjB @@k~¾PPl @@ \\ @@@@@@@@@@@@@@@@@@@@@ŽRèÂ
52 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/05/31 17:47
http://pc.2ch.net/test/read.cgi/mac/1053924514/l50 VEmac”‚ÅApple‚©‚çV‚µ‚o‚½ƒuƒ‰ƒEƒUSafari‚ðŒ@‚艺‚°‚Ä‚¢‚Ü‚·B
‚Ü‚¾Ý’è‚Å‚«‚逖ڂà‚È‚A•W€“I‚È‹@”\‚ªŒ‡”@‚µ‚Ä‚¢‚½‚肵‚Ä‚¢‚Ü‚·‚ª
ƒ^ƒu‚ɑΉž‚µ‚Ä‚¢‚½‚èAGoogle‚ÌŒŸõ‹@”\‚ª•W€‘•”õ‚³‚ê‚Ä‚¢‚½‚è‚Æ
‚ß‚Ú‚µ‚¢‹@”\‚ª·‚èž‚Ü‚ê‚Ä‚ ‚èA¡”No‚½‚΂©‚è‚̃\ƒtƒg‚Ì‹‚Ý‚Æ‚¢‚¤‚©
«—ˆ«‚ðŠ´‚¶‚³‚¹‚Ä‚‚ê‚Ü‚·B
ƒI[ƒvƒ“ƒ\[ƒX‚Å–¢‚¾Beta”Å‚È‚Ì‚Å‚±‚ê‚©‚ç‚Ç‚¤‚È‚é‚©Šy‚µ‚Ý‚Å‚·B
‚æ‚낵‚¯‚ê‚΃vƒƒOƒ‰ƒ€”‚ÌZl‚³‚ñ‚É‚àˆÓŒ©‚ð‚¢‚½‚¾‚«‚½‚¢‚Å‚·B
--ƒRƒsƒy‚ð‚¨‹–‚µ‚ð--
ªmailto:kli
54 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/07/06 14:07
ã‚°‘±‚¯‚Ä‚¢‚é‚ÆA’N‚©‚ª–{“–‚ÉŽÀ‘•‚·‚é‚©‚à‚µ‚ê‚È‚¢
@__ÈQÈ_ @|i@@OO j|@ƒQ‚é‚ÛiOOj @|_ÜÜÜ_ @_ |ÜÜÜ~|@@@@@@@@@ŽRè @@ ~PPPP
iOOj
'/* WININET‰Šú‰» */
hInternet = InternetOpen( _
"WININET Sample Program", _
INTERNET_OPEN_TYPE_DIRECT, _
vbNullString, _
vbNullString, _
0)
'/* ƒT[ƒo‚ÖÚ‘± */
hHttpSession = InternetConnect( _
hInternet, _
"www.yahoo.com", _
UrlComponents.nPort, _
vbNullString, _
vbNullString, _
INTERNET_SERVICE_HTTP, _
0, _
0)
'/* HTTP—v‹‚Ìì¬ */
hHttpRequest = HttpOpenRequest( _
hHttpSession, _
"GET", _
"index.html", _
"HTTP/1.0", _
"
http://www.yahoo.com/ ", _
vbNullString, _
0, _
0)
'/* 쬂µ‚½HTTP—v‹‚Ì”s */ hHttpRequest = HttpSendRequest( _ hHttpRequest, _ vbNullString, _ 0, _ vbNullString, _ 0) '/* ƒRƒ“ƒeƒ“ƒc‚Ì“à—e‚ðŽæ“¾E•\Ž¦ */ Text1.Text = InternetReadFile( _ hHttpRequest, _ Buf, _ BufSize, _ 0) '/* Œãˆ— Call InternetCloseHandle(hHttpRequest) Call InternetCloseHandle(hHttpSession) Call InternetCloseHandle(hInternet)
‚ A
>>57 ‚¾‚ƈႤŠ‚ŃGƒ‰[o‚é
'/* WININET‰Šú‰» */
hInternet = InternetOpen( _
"WININET Sample Program", _
INTERNET_OPEN_TYPE_PRECONFIG, _
vbNullString, _
vbNullString, _
0)
'/* ƒT[ƒo‚ÖÚ‘± */
hHttpSession = InternetConnect( _
hInternet, _
"www.yahoo.com", _
INTERNET_DEFAULT_HTTP_PORT, _
vbNullString, _
vbNullString, _
INTERNET_SERVICE_HTTP, _
0, _
0)
‚Å‚¨Šè‚¢‚µ‚Ü‚·‚Å‚·
‚í‚´‚í‚´‚ ‚肪‚Æ‚¤ô
‚ñ[‚Æ‚è‚ ‚¦‚¸httpƒT[ƒo‚©‚çƒf[ƒ^‚ðŽæ“¾‚·‚é—¬‚ê‚ð®—B winInet‚̉Šú‰»(ƒCƒ“ƒ^[ƒlƒbƒgƒnƒ“ƒhƒ‹‚̎擾) @@@@@@@« Žæ“¾‚µ‚½ƒCƒ“ƒ^[ƒlƒbƒgƒnƒ“ƒhƒ‹‚ðŽg‚Á‚Ä ƒT[ƒo‚ÖÚ‘±(InternetConnect) HttpƒZƒbƒVƒ‡ƒ“‚ðŠJ‚¢‚ănƒ“ƒhƒ‹Žæ“¾ @@@@@@@« InternetConnect‚Ŏ擾‚µ‚½ƒnƒ“ƒhƒ‹‚ðŽg‚Á‚Ä HTTPƒŠƒNƒGƒXƒg‚̃nƒ“ƒhƒ‹‚ðŽæ“¾(HttpRequest) @@@@@@@« ƒŠƒNƒGƒXƒgƒnƒ“ƒhƒ‹Žg‚Á‚ăŠƒNƒGƒXƒg‚Ì‘—MB @@@@@@@« ƒT[ƒo‚©‚çƒf[ƒ^Žæ“¾ ‚ÅA‚ ‚Á‚Ä‚é‚Ì‚©‚ÈH
‚Æ‚è‚ ‚¦‚¸A‹C‚É‚È‚Á‚½‚Ì‚Í '/* 쬂µ‚½HTTP—v‹‚Ì”s */ hHttpRequest = HttpSendRequest( _ hHttpRequest, _ vbNullString, _ 0, _ vbNullString, _ 0) ‚Ì‘æˆêˆø”‚ÌhHttpRequest‚Í‚±‚ÌŽž“_‚ł͉½‚à‚Í‚¢‚Á‚Ä‚È‚¢‚ñ‚¶‚á‚È‚¢H ‚±‚±‚É“ü‚ê‚é‚Ì‚ÍInternetConnect()ŠÖ”‚Ŏ擾‚µ‚½ƒnƒ“ƒhƒ‹‚¶‚á‚È‚¢‚©‚ÈH
‚íB–{“–‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚·I(LEÍE`) ‚Æ‚è‚ ‚¦‚¸¡‚©‚ç“Ç‚ñ‚Ń^ƒ‚µ‚Ä‚Ý‚Ü‚·I
>>60 “Ç‚Ý‚Ü‚µ‚½A‚»‚¤‚Å‚·‚ËB‰´‚Ì“ª‚Ì’†‚É‚ ‚é‚Ì‚Í‚»‚ê‚Å‚·B
‚ÅA‰½ŒÌ‚©ƒŠƒNƒGƒXƒg‚ŃGƒ‰[‚ªo‚éiEmpty‚Ì•Ô‹pj‚Á‚ÄŽ–‚Å‚·
‚¿‚È‚Ý‚ÉEmpty‚ð•Ô‚·‚Ì‚ÍhHttpRequest‚Å‚· HttpOpenRequest‚̃pƒ‰ƒ[ƒ‰[‚ð‚¿‚å‚‚¿‚å‚•Ï‚¦‚Ä‚é‚ñ‚Å‚·‚¯‚Ç‚¢‚©‚ñ‚¹‚ñ‚¤‚Ü‚‚¢‚©‚È‚‚Ä
>>65 ‚¤‚¡A‚Æ‚è‚ ‚¦‚¸ŽŽ‚µ‚Ä‚Ý‚Ä‚‚ê‚¡
‚¤‚£‚£‚ÞEEEEVB—Ž‚Æ‚µ‚Ä‚EEE(ÓºÞÓºÞÓºÞ
‚â‚΂¢—•¶‚É‚È‚Á‚Ä‚éB
>>65 ‚ÅŒ¾‚Á‚½’Ê‚è‚–‚‚‚¾‚Æ‚»‚±‚ÅŽ~‚Ü‚Á‚Ä‚µ‚Ü‚¢‚Ü‚µ‚½B
‚Ç‚¤‚â‚ç‚–‚‚‚ÍhHttpRequest‚ª‹ó‚È‚Ì‚ª‹–‚¹‚È‚¢‚Ì‚©HttpOpenRequest‚Ì錾‚ª‹C‚É‚‚í‚È‚¢‚Ý‚½‚¢‚Å‚·B
‚¿‚È‚Ý‚É–l‚Í‘æˆêˆø”‚Í‚»‚ÌŠÖ”‚ªŽg‚¤ˆø”‚¾‚ƉðŽß‚µ‚Ä‚é‚ñ‚Å‚·‚¯‚LjႢ‚Ü‚·‚©‚ËH
‚–‚‚‚͉´‚àEEEƒ‚ƒSƒ‚ƒS
‚¦‚ÆŽ©Ì‚Ö‚Á‚Û‚±‚³‚ñ‚ÌŠJ”Œ¾Œê‚Í‚È‚ñ‚Å‚·‚©H
>>67 ‚ñ[A‚»‚¤‚¾‚Ë‚¡B
HttpSendRequest()ŠÖ”‚Ì‘æˆêˆø”‚ÍAHTTP—v‹‚ðo‚·Û‚ÉŽg—p‚·‚é’l‚ð“ü‚ê‚é‚ׂ«‚¾‚Ë‚¡B
hHttpRequest = HttpSendRequest( _
hHttpRequest, _
vbNullString, _
0, _
vbNullString, _
0)
‚±‚̃\[ƒXê‡AHttpSendRequest‚É“n‚µ‚Ä‚¢‚é‘æˆêˆø”‚ÍhHttpRequest,B
‚µ‚©‚µAHttpSendRequest‚Ì•Ô‚è’l‚ªŠi”[‚³‚ê‚é‚Ì‚àhHttpRequestB
‚‚܂èhHttpRequest‚ªˆø”‚Æ‚µ‚Ä“n‚³‚ê‚鎞“_‚Å‚ÍA•Ô‚è’l‚Í‚È‚¢‚킯‚¾‚©‚ç´ÝÌßè‚É‚È‚éB
‚ÆAŽv‚¤B
HttpSendRequest‚Ì‘æˆêˆø”‚Ìà–¾‚Í
InternetConnect()ŠÖ”‚Å•Ô‚³‚ꂽƒCƒ“ƒ^[ƒlƒbƒg‚Ö‚ÌÚ‘±‚ðŽ¯•Ê‚·‚éƒnƒ“ƒhƒ‹B
‚Á‚Ä‘‚¢‚Ä‚é‚©‚çA«‚Ìê‡
http://tokyo.cool.ne.jp/masapico/api_HttpOpenRequest.html @@@hHttpSession = InternetConnect(
@@@@@@hInternet,
@@@@@@"www.cool.ne.jp",
@@@@@@INTERNET_DEFAULT_HTTP_PORT,
@@@@@@NULL,
@@@@@@NULL,
@@@@@@INTERNET_SERVICE_HTTP,
@@@@@@0,
@@@@@@0);
‚Á‚Ä‘‚¢‚Ä‚ ‚é‚©‚çAInternetConnect()ŠÖ”‚Å•Ô‚³‚ꂽƒCƒ“ƒ^[ƒlƒbƒg‚Ö‚ÌÚ‘±‚ðŽ¯•Ê‚·‚éƒnƒ“ƒhƒ‹‚Á‚Ä‚¢‚¤‚Ì‚Í
hHttpSession‚ÉŠi”[‚³‚ê‚Ä‚¢‚éB
‚¾‚©‚çAHttpSendRequest‚Ì‘æˆêˆø”‚ÉhHttpSession‚ð—^‚¦‚Ä‚é‚ñ‚¾‚Æ‚¨‚à‚¤‚æ‚ñB
‚ A‚¿‚Ȃ݂ɉ´‚ªŽg‚Á‚Ă錾Œê‚Íâ–Å¡‘O‚Ìjava‚Á‚·EEEEB
‚ [‚È‚é‚Ù‚ÇBã‘‚«‚µ‚¿‚á‚¢‚¯‚È‚¢‚Á‚Ä‚¢‚¤–ñ‘©Ž–‚ª‚ ‚é‚È‚ç‚»‚¤‚Å‚·‚ËB ŽŽ‚µ‚É test00= HttpSendRequest( _ hHttpRequest, _ vbNullString, _ 0, _ vbNullString, _ 0) ‚Á‚Ä‚â‚Á‚Ä‚Ý‚½‚ñ‚¾‚¯‚Ç‚â‚Á‚Ï‚èƒGƒ‰[‚Å‚¿‚á‚¢‚Ü‚µ‚½B
test00= HttpSendRequest( _ hHttpSession, _ vbNullString, _ 0, _ vbNullString, _ 0) ‚¶‚áƒ_ƒ‚©‚¢H
‰´‚à‚¿‚å‚Á‚ƃŠƒtƒ@ƒŒƒ“ƒX‚ð“Ç‚Ý’¼‚µ‚Ä‚Ý‚Ü‚·‚Ë ‚ AJAVA‚Å‚·‚©BˆêŽžŠúJAVA‚à‚Ă͂₳‚ꂽ‚̂ɂЂǂ¢‚Á‚·‚æ‚Ë(L¥ƒÖ¥M)¼®ÎÞ°Ý ‚¦‚Æ‚–‚‚‚ÍŠî–{“I‚Éã‚©‚牺‚Ö‡‚ɃvƒƒOƒ‰ƒ€‚ª“®‚‚ñ‚Ń‹[ƒv‚ª–³‚¢ŒÀ‚艺‚̃\[ƒX‚Ì‚¹‚¢‚Åã‚̃Gƒ‰[‚ªo‚é‚Á‚ÄŽ–‚Í–³‚¢‚Í‚¸‚È‚ñ‚Å‚·‚æiAPI‚Í‚¢‚Ü‚¢‚¿‚í‚©‚ñ‚È‚¢‚Å‚·‚¯‚Çj ‚¾‚©‚çHttpOpenRequest‚ŃGƒ‰[‚ªo‚Ä‚é‚Á‚ÄŽ–‚Í‚»‚ê‚ðŠÜ‚ß‚½ã‚Å‚È‚ñ‚©‚Æ‚ç‚Ô‚Á‚Ä‚é‚Ì‚©‚ÆB
‚ñH ‚ ‚ŸII‚²‚ß‚ñAƒGƒ‰[‚ªo‚Ä‚éŒÂŠ‚ðŒë‰ð‚µ‚Ä‚½EEE½Ï¿B HttpOpenRequest‚©B
>>73 ‚ A‚»‚¤‚È‚ñ‚·‚©(LEÍE`)
‚¢‚¦‚¢‚¦`ô
‚Æ‚Í‚¢‚Á‚Ä‚à‰´‚à‚í‚©‚è‚â‚·‚Œ¾‚¦‚΂悩‚Á‚½‚Å‚·‚ËA‚²‚ß‚ñ‚È‚³‚¢
ˆê‰ž‘‚¢‚Ä‚¨‚‚Æ
HTTP—v‹‚Ì쬂̒¼‰º‚Å‚·
‚ I‚¿‚å‚Á‚ƉðŒˆì‚ª‚݂‚©‚Á‚½‚©‚à‚Å‚·
‚Æ‚è‚ ‚¦‚¸——R‚Í‚í‚©‚ç‚È‚¢‚¯‚Ç•Ï‚¦‚½ƒ\[ƒX‚ð‘~‚«o‚µ‚Ä‚¨‚«‚Ü‚·‚Ë
'/* HTTP—v‹‚Ìì¬ */
hHttpRequest = HttpOpenRequest( _
hHttpSession, _
"GET", _
"index.html", _
"HTTP/1.1", _
"
http://www.yahoo.com ", _
0, _
0, _
0)
‚Ü‚½‰½‚©‚ ‚Á‚½‚ç‚·‚®‘‚«ž‚Ý‚Ü‚·
>>76 ‚¤‚¡A‚¨‚‹B
‚¤‚£‚ÞAInternetOpenUrlEEE‚©H
“®ìŠm”F‚µ‚È‚ª‚炶‚á‚È‚¢‚ƃcƒ‰ƒC‚È(*L„DM)ʧʧ
‚æ‚£‚µAƒpƒp—Ž‚µ‚¿‚á(ry
‚ ‚Ÿ‚ñƒpƒpƒ“‚»‚ê‚Í‚¢‚¯‚Èi—ª ‚Á‚Ä‚©“®ìŠÂ‹«‚ª‚È‚¢‚̂͂‚炷‚¬‚Á‚·‚æ(ß„tß)Ͻް ‚Ü‚Ÿ¡‚©‚ç‚–‚‚‚Á‚Ä‚Ì‚à‚Ç‚¤‚©‚ÆŽv‚¢‚Ü‚·‚¯‚Ç(L¥ƒÖ¥M)¼®ÎÞ°Ý ‚Æ‚è‚ ‚¦‚¸‘¼l‚ÌAPI‚¶‚áŽd‘g‚Ý‚ª‚í‚©‚ç‚È‚¢‚©‚烊ƒtƒ@ƒŒƒ“ƒX“Ç‚ñ‚ŃƒWƒbƒN•”•ªŽ©ì‚µ‚Ä‚Ý‚Ü‚· —[•û‚É‚Í‚±‚±‚É•ñ‚Å‚«‚é—\’èB ‰´‚ÍŽO‘ºƒXƒŒ‚É‚¾‚¢‚½‚¢‚¢‚Ü‚·‚Ì‚Å‚È‚É‚©‚ ‚Á‚½‚ç‚»‚Á‚¿‚É‚Å‚à
‚â‚΂ÁAŒ‹‹Ç•ñ‚Å‚«‚È‚©‚Á‚½B ‚¦‚ÆA•ñ‚Æ‚µ‚Ä‚ÍAPI‚ðŽg‚Á‚½ƒƒWƒbƒN‚Í‚¢‚‚烊ƒtƒ@ƒŒƒ“ƒX’Ê‚è‚Éì‚Á‚Ä‚àƒGƒ‰[‚ªo‚é‚Ì‚Å ‚–‚‚‚̃Rƒ“ƒ|[ƒlƒ“ƒg‚Å‘ã—p‚µ‚Ä‚È‚ñ‚Æ‚©Š®¬‚³‚¹‚Ü‚µ‚½B iAPI‚Å¢‚Á‚Ă鎞‚ɃRƒ“ƒ|[ƒlƒ“ƒg‚ðŒ©‚Â‚¯‚½Žž‚Í‚·‚²‚¢‹~‚í‚ꂽ(ß„tß)j ‚Æ‚¢‚¤‚±‚Ƃňê‚ÉŽè“`‚Á‚Ä‚à‚ç‚Á‚Ä‚ ‚肪‚Æ‚¤‚²‚´‚¢‚Ü‚µ‚½I‚·‚²‚¢•‚©‚Á‚½‚Å‚·B ‚Å‚Í‚Ü‚½ŽO‘ºƒXƒŒ‚ÅB
@@@ (ÜVÜ) @@@„ O O „ ƒ‚±‚ê‚©‚ç‚à–l‚ð‰ž‰‡‚µ‚ĉº‚³‚¢‚ËiOOjB @@¼|@@@@|‚ @@@iQjiQj@@@@@@@@@@@@@@@@@@@@@@ŽRèƒpƒ“
81 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/09/16 00:23
(^_^)v
¼‰ºƒVƒXƒeƒ€ƒ\ƒtƒg‚Ì’†’ÂÆ\‚µ‚Ü‚·
æ“úAƒ[ƒ‹ƒT[ƒoƒeƒXƒg‚Ì‚½‚߂Ƀ[ƒ‹‚Ì•åW‚ð‚¢‚½‚µ‚Ü‚µ‚½‚ªA
‚Ü‚¾‚Ü‚¾‘«‚è‚Ü‚¹‚ñ‚Å‚µ‚½i‚Q‚O‚O’Ê‚®‚ç‚¢‚µ‚©‚«‚Ü‚¹‚ñ‚Å‚µ‚½‚Ì‚Åj
‚Å‚·‚Ì‚ÅA¡‰ñ‚Ü‚½ƒ[ƒ‹‚Ì•åW‚ð‚¢‚½‚µ‚Ü‚·B
‘O‰ñ‚à‘‚«‚Ü‚µ‚½‚ªA‘—‚Á‚Ä‚«‚Ä‚¢‚½‚¾‚¢‚½•û‚©‚ç’Š‘I‚Å
”–—ç‚Å‚·‚ª‚µ‚½‚¢‚ÆŽv‚¢‚Ü‚·‚Ì‚ÅA•K‚¸˜A—‚ÌŽæ‚ê‚éƒAƒhƒŒƒX‚É‚Ä‘—M‚µ‚Ä‚‚¾‚³‚¢B
‚»‚ê‚Å‚Í‚æ‚낵‚‚¨Šè‚¢‚µ‚Ü‚·B
’†’ÔÉl
[email protected]
83 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F03/09/17 19:29
ÀÞsg
84 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F04/05/02 19:52
‚¤‚Ü‚‰B‚µ‚½‚‚à‚è‚Å‚àA‚Å‚©‚‚È‚Á‚½ŠåŽñ‚ªŠÛŒ©‚¦‚¾‚ºB
85 F
ƒfƒtƒHƒ‹ƒg‚Ì–¼–³‚µ‚³‚ñ F04/07/26 13:21
ƒuƒ‰ƒEƒU[‚Á‚ÄHTML‚ÌŽQl‘”ƒ‚Á‚Ä‚‚ê‚Αfl‚Å‚àì‚ê‚Ü‚·‚©H java‚Æ‚©‘S‘R‚í‚©‚ç‚È‚¢‚ñ‚¾‚¯‚ÇB C‚ÌŠJ”ŠÂ‹«‚Í‚ ‚é‚æB
“‚¢•”•ª‚Í–³Ž‹‚·‚ê‚΂Ȃñ‚Æ‚©‚È‚é‚ñ‚¶‚á‚È‚¢‚Ì?
HTML‚̃p[ƒX‚¾‚¯‚ÅŽ€‚Ë‚é„‘fl