int SendFilesToOldTiMidity(int nfiles, char **files) { int i; HANDLE hmailslot; char buffer[1024]; int size; hmailslot = OpenMailslot(); if(hmailslot==NULL) return FALSE; strcpy(buffer,MC_HEADER); size = strlen(buffer); WriteMailslot(hmailslot,buffer,size); strcpy(buffer,MC_FILES); size = strlen(buffer); WriteMailslot(hmailslot,buffer,size); sprintf(buffer,"%d",nfiles); size = strlen(buffer); WriteMailslot(hmailslot,buffer,size); for(i=0;i<nfiles;i++){ char filepath[1024]; char *p; // if(url_check_type(files[i])==-1 && GetFullPathName(files[i],1000,filepath,&p)!=0){ if(isURLFile(files[i])==FALSE && GetFullPathName(files[i],1000,filepath,&p)!=0){ size = strlen(filepath); WriteMailslot(hmailslot,filepath,size); } else { size = strlen(files[i]); WriteMailslot(hmailslot,files[i],size); } } CloseMailslot(hmailslot); return TRUE; }
int main( int argc, char *argv[] ) { HANDLE handle; int i; printf("\nStart %s...\n", argv[0]); for (i = 1; i < argc; i++) { switch ( *argv[i] ) { case 'h': case '?': DisplayUsage( argv[0] ); break; case 'o': if ( !OpenMailslot( argv[i] + 1, &handle ) ) { return 3; } break; case 'n': if ( !NotifyChangeDirectoryTest() ) { return 3; } break; case 'c': printf( "Closing file\n" ); NtClose( handle ); break; case 'w': if (!WriteTest(handle)) { return 3; } break; case 'v': if (!QueryVolumeTest()) { return 3; } break; default: printf( "Unknown test ""%s"" skipped.\n", argv[i] ); } } printf( "%s exiting\n", argv[0]); return 0; }
int SendCommandNoParamOldTiMidity(char *command) { HANDLE hmailslot; char buffer[1024]; int size; hmailslot = OpenMailslot(); if(hmailslot==NULL) return FALSE; strcpy(buffer,MC_HEADER); size = strlen(buffer); WriteMailslot(hmailslot,buffer,size); strcpy(buffer,command); size = strlen(buffer); WriteMailslot(hmailslot,buffer,size); strcpy(buffer,"0"); size = strlen(buffer); WriteMailslot(hmailslot,buffer,size); CloseMailslot(hmailslot); return TRUE; }