Вы можете просто рекурсивно искать родительский каталог.
@echo off
for /R "C:\Program Files (x86)\Citrix\Remote Support Customer" %i in (g2ax_comm_customer.*) do if not exist %%i "\\location.exe" --mode unattended
Мне жаль, что объектная модель Sharepoint не была чисто управляемым кодом. Хотя наличие оберток.NET удобно, имея необходимость волноваться о расположении многих объектов, что IDisposable реализации является болью. Настолько легко столкнуться с проблемами памяти, когда располагают, не становится названным в приложении WSS. И я думал, что причина перемещения в.NET состояла в том, чтобы освободить разработчиков от необходимости иметь дело с управлением памятью...
Любой API SPList мог использовать полное, переписывают. Попытка иметь дело с библиотеками с вложенными папками является полным кошмаром со списком, полностью сглаженным без очевидной иерархической структуры.
Другое замечательное дополнение добавило бы интерфейсы к SPWeb, SPList и другим классам Sharepoint для помощи тестированию.
Как насчет того, чтобы осуществить рефакторинг Свойства, которые приводят к дополнительной базе данных, звонит в методы вместо этого, например, свойство Items на SPList.
Моим любимым является SPField. Метод GetFieldValue. Я понятия не имею, почему они разработали его способ, которым они сделали, но мне это действительно едва имеет смысл. Для вытаскивания объекта из ListItem, необходимо сделать somethine как:
SPField field = ((SPList)list).Fields.GetField("FieldName");
object fieldValue = field.GetFieldValue(((SPListItem)item)[field.Title].ToString());
Вытаскивание объекта из ListItem является IMO основная операция, таким образом, это не должно быть сложным.
Имеет любого замеченного этот метод: http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spsecurity.runwithelevatedprivileges.aspx Этот метод показывает невероятную ерунду, что Sharepoint выставляет разработчикам.
Несоответствия при передаче имен полей методам или массивам. Например:
Для помещения обледенения на пирог обычно нет никакой документации о том, берет ли метод внутренний и/или отображаемое имя.