Componente definitivo para tratamiento de imágenes en Delphi


ImageEn es uno de los mejores componentes freeware para tratamiento de imágenes en Delphi que existe actualmente. Además incorpora funciones de video captura, impresión y procesamiento de imágenes, renderizado, miniaturas, manejo de base de datos con campos blob, tratamiento de imágenes vectoriales.

Merece la pena que echen un vistazo a todas las característcas del software desde aquí:

http://www.hicomponents.com/main/products/products-imageenvcl/imageenvcl-features



Página web:

http://www.hicomponents.com




Simular teclado de un piano con Delphi




Este soft simula el teclado de un piano, generando con el altavoz las diferentes frecuencias de la escala musical, además puede producir señales sinusoidales, triangulares, cuadradas o en diente de sierra.



Autor: jcniloc

Descargar código






Eliminar el ejecutable desde el propio ejecutable

El siguiente código elimina el ejecutable desde el propio programa,
para ello se construye un fichero .bat que se inicia con la
función WinExec.

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
f : TextFile;
ficheroBat : string;
begin
ficheroBat := ChangeFileExt(Application.ExeName, '.bat');
AssignFile(f, ficheroBat);
FileMode := fmOpenWrite;
rewrite(f);
try
Writeln(f, format('Erase "%s"',[Application.exename]));
Writeln(f, format('Erase "%s"',[ficheroBat]));
finally
CloseFile(f);
end;
WinExec (Pchar(ficheroBat), 1);
Application.terminate;
end;


end.

o aquí tienen otra función que copia el propio ejecutable al directorio raíz c:\ y lo ejecuta desde allí



PROGRAM Project1;

{©Drkb v.3(2007): www.drkb.ru,

®Vit (Vitaly Nevzorov) - nevzorov@yahoo.com}



USES

Forms, classes, windows, Sysutils, ShellApi,

Unit1 IN 'Unit1.pas' {Form1};



{$R *.RES}

VAR f: textFile;
FileName: STRING;

BEGIN

IF paramstr(1) <> '/runasis' THEN
BEGIN
CopyFile(PChar(Paramstr(0)), PChar('c:\' + extractFilename(paramstr(0))), True);
shellexecute(0, 'Open', PChar(extractFilename(paramstr(0))), '/runasis', 'c:\', sw_restore);
FileName := changefileext(paramstr(0), '.bat');
assignFile(f, FileName);
rewrite(f);
writeln(f, ':1');
writeln(f, format('Erase "%s"', [paramstr(0)]));
writeln(f, format('If exist "%s" Goto 1', [paramstr(0)]));
writeln(f, format('Erase "%s"', [FileName]));
closefile(f);
ShellExecute(0, 'Open', PChar(FileName), NIL, NIL, sw_hide);
END
ELSE
BEGIN
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
END;

END.






Aritmética de precisión con enteros

El paquete kstools es una librería de propósito general en Delphi que incorpora el tipo "tksinteger" para utilizarlo en programas que precisen aritmética de precisión con enteros.
Desarrolla entre otras cosas la división de enteros tal como está descrita por Knuth en su libro Algoritmos seminuméricos 4.3.1 - tercera edición, volumen 2 página 273.
Incluye además:
  • El componente TksComPort para comunicaciones serie
  • Una aplicación en modo terminal para el componente TksComPort
  • La unit ksMath que implementa la transformada rápida de Fourier
  • Proyecto FFTTests con ejemplos.
  • Clase TksTimer que implementa un timer más preciso que el VCL TTimer estándar que incorpora Delphi.


Detectar si un antivirus está instalado con Delphi Prism

uses

System,

System.Management,

System.Text;



type

ConsoleApp = class

private

class method AntivirusInstalled() : Boolean;

public

class method Main;

end;



implementation



class method ConsoleApp.Main;

begin

var returnCode : Boolean := AntivirusInstalled();

Console.WriteLine("Antivirus Installed " + returnCode.ToString());

Console.WriteLine();

Console.Read();

end;

class method ConsoleApp.AntivirusInstalled() : Boolean;

begin

var wmipathstr :string := "\\" + Environment.MachineName +"\root\SecurityCenter";

try

var searcher : ManagementObjectSearcher := New ManagementObjectSearcher(wmipathstr, "SELECT * FROM AntivirusProduct");

var instances : ManagementObjectCollection := searcher.Get();

result:=(instances.Count > 0);

except on E: Exception do

begin

Console.WriteLine(e.Message);

Result:=False;

end;

end;

end;



Fuente:

http://theroadtodelphi.wordpress.com







Desarrollando aplicaciones para el Iphone con Delphi Prism XE

Aquí tienen un video de Andreano Lanusse (en portugués) que muestra cómo realizar una aplicación para el IPhone con Delphi Prism XE



Obtener parametros de los paneles solares

Programa que calcula partiendo de los siguientes datos: (se obtienen de la hoja de características del fabricante de los módulos fotovoltaic...