30/04/11 13:37
Goblin
per il cambio dell'icona ti rimando a pierotofy.it/pages/extras/forum/171/1024190-%5Bdelphi_cambiare_icona_di_un_file_exe/ dove ho già risposto, per le stringhe se prendi spunto dal cambio dell'icona credo che dovresti riuscirci, avevo fatto qualcosa un po' di tempo fa .. se trovo qualcosa lo posto
Ibis redibis non morieris in bello
30/04/11 15:00
formyvale
Non sono riuscito a capire. Il programma non cambia icona ad un'altro exe sempre fatto in delphi.
aaa
30/04/11 17:49
Goblin
il programmino è solo un esempio, cambia l'icona di qualsiasi file exe sia che sia fatto in delphi che in qualsiasi altro linguaggio
Ibis redibis non morieris in bello
30/04/11 23:38
formyvale
Allora sono riuscito a trovare un esempio googlando ancora...
X ki farà una ricerca su google e troverà questo topic ecco la soluzione..
Fate un programma e chiamatelo Server(ma nn è un server) e mettete questo code:
invece x l'edit questo:
X ki farà una ricerca su google e troverà questo topic ecco la soluzione..
Fate un programma e chiamatelo Server(ma nn è un server) e mettete questo code:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Memo1: TMemo; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; Type TServerSettings = Record szIpAddress :String[255]; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); Function ReadResourceFile(var ServerSettings:TServerSettings):Boolean; Var hResInfoBlock :Longword; hResource :Longword; begin hResInfoBlock := FindResource(hInstance, 'MYSETTINGS', RT_RCDATA); if hResInfoBlock <> 0 then begin hResource := LoadResource(hInstance, hResInfoBlock); if hResource <> 0 then begin CopyMemory(@ServerSettings,LockResource(hResource),SizeOf(TServerSettings)); end; end; end; var ServerSettings :TServerSettings; begin ReadResourceFile(ServerSettings); Memo1.Text:='IP:'+ServerSettings.szIpAddress; end; end.
invece x l'edit questo:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Edit1: TEdit; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; Type TServerSettings = Record szIpAddress :String[255]; end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); Function MakeLangID(P, S: Word): Integer; Begin Result := (S shl 10) or P; End; function WriteToResourceFile(ServerSettings:TServerSettings):Boolean; Var hResource :Longword; Begin Result := False; hResource := BeginUpdateResource('Server.exe',False); if hResource <> INVALID_HANDLE_VALUE then begin if UpdateResource(hResource, RT_RCDATA, 'MYSETTINGS', MakeLangID(LANG_NEUTRAL, SUBLANG_DEFAULT), @ServerSettings, SizeOf(TServerSettings)) then Result := True; EndUpdateResource(hResource, False); end; end; Var ServerSettings :TServerSettings; begin FillChar(ServerSettings,SizeOf(TServerSettings),#0); ServerSettings.szIpAddress := Edit1.text; if WriteToResourceFile(ServerSettings) = True then ShowMessage('Ip modificato con successo.') else ShowMessage('Impossibile modificare l''ip.'); Halt(0); end; end.
aaa