According my test you can use two ways:
1) rewrite theme_filefield_widget_file() function inside your template.php of your theme, to replace the $element['#description'] value, for example:
function phptemplate_filefield_widget_file($element) {
$output = '';
switch ($element['#name']) {
case 'NAME_FIELD'://name of field in $element['#name']
$element['#description'] = 'Images must be larger than 200x200';
break;
}
$output .= '<div class="filefield-upload clear-block">';
if (isset($element['#field_prefix'])) {
$output .= $element['#field_prefix'];
}
_form_set_class($element, array('form-file'));
$output .= '<input type="file" name="'. $element['#name'] .'"'. ($element['#attributes'] ? ' '. drupal_attributes($element['#attributes']) : '') .' id="'. $element['#id'] .'" size="'. $element['#size'] ."\" />\n";
if (isset($element['#field_suffix'])) {
$output .= $element['#field_suffix'];
}
$output .= '</div>';
return theme('form_element', $element, $output);
}
(I found very useful to change all file/image fields, but in the example the switch/case allows select an specific field that can be of your content type)
2) form_alter
hook in a custom module (in this example module name is change_form_values_form_alter), and attach a function to $form['#after_build']
array:
function change_form_values_form_alter($form, &$form_state) {
if ($form['form_id']['#id'] == 'YOUR_FORM_ID') {
$form['#after_build'][] = 'change_form_values_file_widget';
}
}
function change_form_values_file_widget($form, &$form_state) {
$form['GROUP_NAME_IF_EXIST']['FILE_FIELD_NAME'][0]['upload']['#description'] = 'Images must be larger than 200x200';
return $form;
}
Also, seems that all help string, including other validations like max size, extensions allowed, are overwritten, so I guess that you should add the string including other texts.
I hope information be useful.