Скажите плиз как сделать чтоб на ярлыке был значок мой размеров 16х16 или 32х32. И еще нужно чтобы на двух полях edit1 edit2 сохранялись введенные тексты при оследующих запусках проги. Если не трудно напишите код.
Всмысле значек у какого ярлыка, если у ехе-шника, то Project-Options-Application-Load Icon. А если те надо чтоб с твоей прогой ассоциировались определенные файлы, они будут с такими же значками - то вот пример кода: (допустим для .txt файла) var Reg: Tregistry; begin Reg:=Tregistry.Create; Reg.RootKey:HKEY_CLASSES_ROOT; Reg.OpenKey('.txt', True); Reg.WriteString('', 'Text file'); Reg.CloseKey; Reg.CreateKey('txt"+'file_cyd'); Reg.OpenKey('Textfile\defaulticon', True); Reg.WriteString('', Application.ExeName + ',0'); Reg.ClodeKey; Reg.OpenKey('Textfile\shell\open\command', True); Reg.WriteString('', Application.ExeName + ' "%1"'); Reg.CloseKey; Reg.Free; end; А чтобы сохранялось в эдитах, так можно там же в реестре создать пару ключиков стринговых или же сохранять в файл. Чет мне лень эти коды писать. Поищи в поиске создание/чтение ключей из реестра. ---//--- данных из файла
var REG : TRegistry; begin REG := TRegistry.Create; REG.RootKey:=HKEY_LOCAL_MACHINE; REG.OpenKey('YourSoftwareName',true); REG.WriteString('Edit1.Text',true); REG.CloseKey; REG.Destroy; end; -------------------//-------------------------- var REG : TRegistry; begin REG := TRegistry.Create; REG.RootKey:=HKEY_LOCAL_MACHINE; REG.OpenKey('YourSoftwareName',true); Edit1.Text:=REG.ReadString('Edit1.Text',true); REG.CloseKey; REG.Destroy; end;
Спасибо зо значком понял и получилось. но с реестром проблеммы: var REG : TRegistry; Показывает как ошибку ((. Подскажите плиз....
Ты в uses точно Registry вписал, если честно я код не проверял, буквально щас написал, если хочш напишу проверю на работоспособность
Вот 2 процедурки, работает 100%, 1-я записывает в раздел локал_машин - YourSoftwareName - ключ M - значение твоего едита. 2-я баттн читает и всовывает, я думаю сможешь сам это втсавить просто в Form.Activate (просто вместо баттн1.клик). procedure TForm1.Button1Click(Sender: TObject); var Reg : Tregistry; begin Reg := TRegistry.Create; Reg.RootKey:=HKEY_LOCAL_MACHINE; Reg.OpenKey('Software\YourSoftwareName',true); Reg.WriteString('M', Edit1.Text); Reg.CloseKey; Reg.Destroy; end; procedure TForm1.Button2Click(Sender: TObject); var Reg : Tregistry; begin Reg := TRegistry.Create; Reg.RootKey:=HKEY_LOCAL_MACHINE; Reg.OpenKey('Software\YourSoftwareName',true); Edit1.Text:=Reg.ReadString('M'); Reg.CloseKey; Reg.Destroy; end; end. Есси не сложно поставь +
Спасиба все пашет.... Насчет + неполучить ((. Его могут ставить те у кого уже есть 1+ а у меня 0 )) Но незабуду. Как кто-набудь меня отблагодарит то сразу поставлю )) неволнуйся