tag:blogger.com,1999:blog-1688132520265708820.post539405443253219257..comments2023-04-02T16:52:35.787+03:00Comments on Блог GunSmoker-а (переводы): Используется ли файл?GunSmokerhttp://www.blogger.com/profile/15611696588191431330noreply@blogger.comBlogger4125tag:blogger.com,1999:blog-1688132520265708820.post-25829503713180088602016-11-21T16:52:08.386+03:002016-11-21T16:52:08.386+03:00Хоть 90% процентов кода и гуано http://www.gunsmok...Хоть 90% процентов кода и гуано http://www.gunsmoker.ru/2010/05/90.html, но этот пример реально помог. Спасибо.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-1688132520265708820.post-909262056842071062015-12-24T05:04:40.979+03:002015-12-24T05:04:40.979+03:00А смысл в такой функции? Проще просто открыть файл...А смысл в такой функции? Проще просто открыть файл. Успех - ОК, провал - файл занят. <br /><br />А смысл заметки - в получении <b>имени приложения</b>.Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-1688132520265708820.post-28109196154244850072013-11-08T10:29:27.262+04:002013-11-08T10:29:27.262+04:00Прошу прощения
function FileInUseM(const AFileNam...Прошу прощения<br /><br />function FileInUseM(const AFileName: WideString): boolean;<br /> var<br /> AFileMoniker: IMoniker;<br /> ACTX: IBindCtx;<br /> AHandleFile: THandle;<br /> begin<br /> CreateBindCtx(0,ACTX);<br /> OleCheck(CreateFileMoniker(PWideChar(AFileName), AFileMoniker));<br /> if (AFileMoniker.IsRunning(ACTX, nil, nil) = S_OK) then exit(true);<br /> exit(false); // Ж-(<br /> end;Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-1688132520265708820.post-19805924887779558902013-11-08T10:26:28.586+04:002013-11-08T10:26:28.586+04:00Более короткий путь к проверке использования/не ис...Более короткий путь к проверке использования/не использования файла с применением данной технологии может быть следующим:<br /> function FileInUse(const AFileName: WideString): boolean;<br /> var<br /> AFileMoniker: IMoniker;<br /> ACTX: IBindCtx;<br /> AHandleFile: THandle;<br /> begin<br /> CreateBindCtx(0,ACTX);<br /> OleCheck(CreateFileMoniker(PWideChar(AFileName), AFileMoniker));<br /> if (AFileMoniker.IsRunning(ACTX, nil, nil) = S_OK) then exit(true);<br /> end;<br />Anonymousnoreply@blogger.com