стартиране на ARJ
7 отговора
265 прегледа
Re: стартиране на ARJ
пробвай нещо такова не съм го тествал щото нямам arj тука но предполагам че ще сработи:
Procedure Archive (Directory:String);
begin
ShellExecute(0, Nil, Pchar('arj.exe'), PChar(directory+' -a -r'), Nil, SW_NORMAL);
end;
AquilaX
____________
умният знае кога да говори, мъдрият знае кога да мълчи
Procedure Archive (Directory:String);
begin
ShellExecute(0, Nil, Pchar('arj.exe'), PChar(directory+' -a -r'), Nil, SW_NORMAL);
end;
AquilaX
____________
умният знае кога да говори, мъдрият знае кога да мълчи
Re: стартиране на ARJ
Проблема е че командния ред трябва да има подобен вид
ARJ a c:\proba\filename.txt c:\ text.arj
Благодаря
ARJ a c:\proba\filename.txt c:\ text.arj
Благодаря
Re: стартиране на ARJ
Значи ето ти ShellExecute (има я в WinAPI-to)
HINSTANCE ShellExecute(
HWND hwnd, // handle to parent window
LPCTSTR lpOperation, // pointer to string that specifies operation to perform
LPCTSTR lpFile, // pointer to filename or folder name string
LPCTSTR lpParameters, // pointer to string that specifies executable-file parameters
LPCTSTR lpDirectory, // pointer to string that specifies default directory
INT nShowCmd // whether file is shown when opened
);
pParameters:
If lpFile specifies an executable file, lpParameters is a pointer to a null-terminated string that specifies parameters to be passed to the application.
If lpFile specifies a document file, lpParameters should be NULL.
Значи пиши му там каквито си искаш параметри към ARJ-то
AquilaX
____________
умният знае кога да говори, мъдрият знае кога да мълчи
HINSTANCE ShellExecute(
HWND hwnd, // handle to parent window
LPCTSTR lpOperation, // pointer to string that specifies operation to perform
LPCTSTR lpFile, // pointer to filename or folder name string
LPCTSTR lpParameters, // pointer to string that specifies executable-file parameters
LPCTSTR lpDirectory, // pointer to string that specifies default directory
INT nShowCmd // whether file is shown when opened
);
pParameters:
If lpFile specifies an executable file, lpParameters is a pointer to a null-terminated string that specifies parameters to be passed to the application.
If lpFile specifies a document file, lpParameters should be NULL.
Значи пиши му там каквито си искаш параметри към ARJ-то
AquilaX
____________
умният знае кога да говори, мъдрият знае кога да мълчи
Re: стартиране на ARJ
Ехеее, защо го правите по най трудния начин?
пробвай....
WinExec('arj a -v1200 -y c:\Tom\Arh\Data.arj *.*',SW_SHOWMINIMIZED);
примерно!!!!
пробвай....
WinExec('arj a -v1200 -y c:\Tom\Arh\Data.arj *.*',SW_SHOWMINIMIZED);
примерно!!!!
Re: Zashtoto
От както си нагодих един алгоритъм за компресиране и си го враждам в програмите, от тогава не ги използвам тия функци... та за тва може да не съм в час :))))))))
Стартиране на друга програма
Прилагам един unit който ще свърши работа.
unit FExecute;
interface
uses WinTypes, ShellAPI, Forms, SysUtils;
function ExecuteFile(const FileName, Params, DefaultDir: string): THandle;
implementation
{ExecuteFile(FileName, '', Directory)}
function ExecuteFile(const FileName, Params, DefaultDir: string): THandle;
var
zFileName, zParams, zDir: array[0..255] of Char;
begin
Result := ShellExecute(Application.MainForm.Handle, nil, StrPCopy(zFileName, FileName), StrPCopy(zParams, Params), StrPCopy(zDir, DefaultDir), SW_SHOW);
end;
end.

unit FExecute;
interface
uses WinTypes, ShellAPI, Forms, SysUtils;
function ExecuteFile(const FileName, Params, DefaultDir: string): THandle;
implementation
{ExecuteFile(FileName, '', Directory)}
function ExecuteFile(const FileName, Params, DefaultDir: string): THandle;
var
zFileName, zParams, zDir: array[0..255] of Char;
begin
Result := ShellExecute(Application.MainForm.Handle, nil, StrPCopy(zFileName, FileName), StrPCopy(zParams, Params), StrPCopy(zDir, DefaultDir), SW_SHOW);
end;
end.