Знайте, Intuit, лекция тип tstringlist
Работа с папки
В Лазар, има няколко полезни функции и процедури за работа с друга папка (директория), които можете да използвате във вашите програми. Нека да ги изучават. Ако желаете, можете да създадете просто приложение, с един бутон TButton във формуляра. Генериране на процедура OnClick към нея и в тази процедура може да проверява обсъдени по-долу от своя страна примери.
GetDir - връща текущата папка в определен диск параметъра. Има две възможности: номерът на диска (цяло число), както и името на един текст променлива, където ще бъде записано в резултат на функцията. Имайте предвид, че номерирането започва с един диск, то ще управлява А. Първа твърд диск C: има номер 3. Ако зададете диск номер 0, тя ще се покаже информация за текущата папка на диска. На Linux и други Unix-подобни системи, диск номерация ще бъдат игнорирани. модули функция описани в система и SysUtils. за него е достатъчно, ако е свързан един от тях. Пример за приложение:
CHDIR - процедура, прави ток е посочено в папката параметър. Процедурата, описана в модули система и SysUtils. За да го използвате, трябва само да се свържете един от тях. Пример за приложение:
SetCurrentDir - функция. Това прави зададения параметър в текущата папка и връща True, ако е успешно, или невярно. ако възникне грешка (например в определена папка не съществува). Функцията е описано в единицата SysUtils. Пример за приложение:
CreateDir - функция. Създаване на папка параметър. При успех, той се връща True. в случай на повреда - False. Неспазването им може да се случи, ако няма права да създадете папка, например, диска е само за четене, или папката вече съществува. Функцията е описано в единицата SysUtils. Следващият пример ще бъде успешен (освен ако, разбира се, можете да създадете папка изобщо) при първата покана, както и за последващо неуспешен, тъй като тази папка ще вече:
ForceDirectories - функция. създава определена папка и всички липсващата папка. При успех, той се връща True. в случай на повреда - False. Функцията е описано в единицата SysUtils. В този пример, С диска: Ще бъде създадена папка MyNewDir. и в него - 123 Папка:
RMDIR - процедура премахва указаното място параметър. За разлика от RemoveDir. Той не се връща никаква стойност и не може да изтриете текущата папка. Когато се опитате да изтриете несъществуваща папка причинява грешка на програмата, така че трябва да се прилага само в комбинация с DirectoryExists. за да се избегнат неприятни грешки. И тя винаги е по-добре да се използва RemoveDir. Пример за приложение:
Благодарим Ви за прекрасен, разбира се!
Независимият работата №2 съставяне MyCript.pas модул (OS: Windows 7 x64, Лазар 1.4 Win64), издадени за грешка в монтажа код
mycript.pas (54,5) Грешка: Asm: [тласък reg32] невалидна комбинация от опкод и операнди
mycript.pas (95,5) Грешка: Asm: [поп reg32] невалидна комбинация от опкод и операнди
Аз разбирам, че курса е готов за 32-битова операционна система, но какво да кажем в случая с 64-битови системи?
На манипулаторите FileCreate елементи на менюто, FileOpen, както и затваряне на формуляра манипулатор OnClose - в тези три процедури съдържат един и същ код
тях, преди да създадете нов текст>
ако след това Memo1.Modified започне
// ако потребителят е съгласен да запазите промените:
ако MessageDlg ( "Запиши като"
"Сегашната файлът е редактиран. Запазване на промените?
mtConfirmation [mbYes, mbNo, mbIgnore], 0) = mrYes тогава
FileSaveClick (подателя);
приключи; // ако
Позволете ми да ви попитам: няма ли да е по-добре да се направи този код в отделна процедура, например - под формата на манипулатор на събитие OnCloseQuery? Доколкото мога да си спомня за Delphi опит, обадете се на тази процедура сама по себе си не би трябвало да доведе до затварянето на формата. Това означава, че тя може да се използват при процедури за почистване Memo1 и четене от файл. Или в Лазар не можеш да направиш?