int main (int argc, char * argv[]) { struct hostent *server; struct sockaddr_in si_server; char buf[CHUNKSIZE]; int PORTNO = atoi(argv[4]); server = gethostbyname(argv[3]); if (server==NULL) { fprintf(stderr,"ERROR, no such host\n"); exit(0); } //This section builds the socket information int sockfd = socket(AF_INET, SOCK_STREAM, 0); if (sockfd < 0) error("ERROR opening socket"); bzero(&si_server, sizeof(si_server)); si_server.sin_family = AF_INET; si_server.sin_port=htons(PORTNO); inet_pton(AF_INET, argv[1], &si_server.sin_addr.s_addr); //connect if (connect(sockfd,(struct sockaddr *)&si_server,sizeof(si_server)) < 0) error("ERROR connecting"); //Calls the send_filename() method declared below if (!send_filename(sockfd, argv[2])){ printf("ERROR sending filename\n"); error ("SENDING FILENAME"); } printf("Created filename, now sending file contents \n"); //sending data to the created file on the server int fp = open(argv[1], O_RDONLY); for(;;){ int nbytes = read(fp, buf, CHUNKSIZE); buf[CHUNKSIZE] = '\0'; if (!nbytes) break; //printf("Buffer being written: %s \n", buf); write(sockfd, buf, nbytes); } printf("File transferred.\n"); close(fp); close(sockfd); return 0; }
FXbool FXRemoveFiles::remove(const FXString& path){ FXbool result; FXStat stat; send_filename(path); result = FXStat::statLink(path,stat); if (!result) result = FXStat::statFile(path,stat); if (result) { if(stat.isDirectory()){ FXDir dir(path); FXString name; while(dir.next() && running){ name=dir.name(); if(name[0]=='.' && (name[1]=='\0' || (name[1]=='.' && name[2]=='\0'))) continue; if(!remove(path+PATHSEP+name) && !ignore) return FALSE; } if (ignore) { FXDir::remove(path); return TRUE; } else if (FXDir::remove(path)==FALSE){ queryDelete(path); if (ignore==FALSE) return FALSE; } return TRUE; } if (ignore) { FXFile::remove(path); return TRUE; } if (!FXFile::remove(path)) { queryDelete(path); if (ignore==FALSE) return FALSE; } return TRUE; } return FALSE; }
void Widget::OpenFile() { emit send_filename(filename); }
Widget::Widget(QWidget *parent) : QWidget(parent), ui(new Ui::Widget) { ui->setupUi(this); /*让图片自适应lable的大小,图片会被拉伸等*/ //ui->label->setScaledContents(true); // ui->label->resize(100,100); //// ui->scrollArea->setWidget(ui->label); // QImage* img=new QImage; // img->load(filename); // ui->label->setPixmap(QPixmap::fromImage(*img)); x=0; y=0; R1=0.0;G1=0.0;B1=0.0; R2=0.0;G2=0.0;B2=0.0; R3=0.0;G3=0.0;B3=0.0; R4=0.0;G4=0.0;B4=0.0; R5=0.0;G5=0.0;B5=0.0; R6=0.0;G6=0.0;B6=0.0; R7=0.0;G7=0.0;B7=0.0; R8=0.0;G8=0.0;B8=0.0; R9=0.0;G9=0.0;B9=0.0; ui->lineEdit->setEnabled(false); ui->lineEdit_2->setEnabled(false); ui->lineEdit_3->setEnabled(false); ui->lineEdit_4->setEnabled(false); ui->lineEdit_5->setEnabled(false); ui->lineEdit_6->setEnabled(false); ui->lineEdit_7->setEnabled(false); ui->lineEdit_8->setEnabled(false); ui->lineEdit_9->setEnabled(false); btnGroupFruits = new QButtonGroup(this); btnGroupFruits->addButton(ui->radioButton,0); btnGroupFruits->addButton(ui->radioButton_1,1); btnGroupFruits->addButton(ui->radioButton_2,2); btnGroupFruits->addButton(ui->radioButton_3,3); btnGroupFruits->addButton(ui->radioButton_4,4); btnGroupFruits->addButton(ui->radioButton_5,5); btnGroupFruits->addButton(ui->radioButton_6,6); btnGroupFruits->addButton(ui->radioButton_7,7); btnGroupFruits->addButton(ui->radioButton_8,8); connect(ui->pushButton,SIGNAL(clicked(bool)),this,SLOT(OpenFile())); connect(ui->radioButton,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->radioButton_1,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->radioButton_2,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->radioButton_3,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->radioButton_4,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->radioButton_5,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->radioButton_6,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->radioButton_7,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->radioButton_8,SIGNAL(clicked()),this,SLOT(onRadioClick())); connect(ui->label,SIGNAL(send_rgb_num(int,int,int,int)),this,SLOT(set_rgb_num(int,int,int,int))); connect(this,SIGNAL(send_filename(QString)),ui->label,SLOT(set_filename(QString))); connect(ui->pushButton_2,SIGNAL(clicked()),this,SLOT(submit_canshu())); }