He agregado estos dos métodos a la primera unidad de mi aplicación Delphi 5.¿Puede Delphi solo usar un .dll si es necesario?
function Inp(PortAddress: Integer): Integer; stdcall; external 'inpout32.dll' name 'Inp32';
procedure Output(PortAddress, Value: Integer); stdcall; external 'inpout32.dll' name 'Out32';
Sin embargo, no quiero tener que emitir la biblioteca inpout32 con el software a menos que explícitamente lo necesitan. Actualmente, el programa dice "No encontrado" al ejecutar a menos que estén presentes en la raíz o System32.
Los usuarios solo llamarán a estos métodos si tienen una opción específica establecida, pero esto no se recopila desde el archivo .ini hasta que se use la biblioteca inpout.
¿Hay alguna manera de usar esta biblioteca solo cuando sea necesario, como lo hacen algunos componentes, en lugar de declararla de la manera en que lo hago?
Sí, se puede hacer 'carga dinámica'. Use 'LoadLibrary' y' GetProcAddress', como se explica [aquí] (http://en.wikipedia.org/wiki/Dynamic_loading#Windows). –