filenames are limited to the constant MAX_PATH wich is 256. 900 is way more than that. for individual files this should be enough. if your trying to fill the data variable with multiple files i would recomend against it. alternatively you can use a custom alias or signal wich is called once for each file. this allows you to send multiple files with just one call and still remain under 900. you cannot alter the data variables size (realloc wont work because mirc expects it to be 900 so it wont use anything above that. also the pointer returned from realloc is not garaunteed to be the same altho there is a workaround for that).