Сегодня я использую «creat» вместо «open» в V2.21.0 (wrapper.c-int git_mkstemps_mode (шаблон char *, int суффикс_len, режим int), режим - 0600). Тогда ладно.
507 for (count = 0; count < TMP_MAX; ++count) {
508 uint64_t v = value;
509 /* Fill in the random bits. */
510 filename_template[0] = letters[v % num_letters]; v /= num_letters;
511 filename_template[1] = letters[v % num_letters]; v /= num_letters;
512 filename_template[2] = letters[v % num_letters]; v /= num_letters;
513 filename_template[3] = letters[v % num_letters]; v /= num_letters;
514 filename_template[4] = letters[v % num_letters]; v /= num_letters;
515 filename_template[5] = letters[v % num_letters]; v /= num_letters;
516
517 // fd = open(pattern, O_CREAT | O_EXCL | O_RDWR, mode);
518 fd = creat(pattern, mode);
519 if (fd >= 0)
520 return fd;
521 /*
522 * Fatal error (EPERM, ENOSPC etc).
523 * It doesn't make sense to loop.
524 */
525 if (errno != EEXIST)
526 break;
527 /*
528 * This is a random value. It is only necessary that
529 * the next TMP_MAX values generated by adding 7777 to
530 * VALUE are different with (module 2^32).
531 */
532 value += 7777;
533 }
Это возможно и просто.
Образец Feature.xml:
<Feature
Id="21F724AE-9C1C-4F4D-AAE9-7789CA01A7E3"
Title="ACME Lists"
Description="List definitions for the ACME"
Version="1.0.0.0"
Hidden="false"
Scope="Web"
ImageUrl="ACMEImages\acmelogo.png"
xmlns="http://schemas.microsoft.com/sharepoint/">
<!-- other feature file info omitted -->
Образец файла DDF:
.Set DestinationDir=IMAGES\AcmeImagesRootFiles\TEMPLATE\IMAGES\ACMEIMages\acmelogo.png
В SharePoint 2010 значок Microsoft по умолчанию: GenericFeature.gif - изображение 31 x 22. С VS 2010 и SP 2010 вы можете добавить сопоставленную папку SharePoint «Изображения» в свой проект SharePoint. Затем поместите свое изображение в эту папку. Обязательно укажите URL-адрес изображения на панели «Свойства» объекта * .feature. Используйте путь к изображению, как указано выше.