Можно эмулировать нажатие кнопки, я так делал когда появился kis7, тогда особо никто не знал или не делился как обходить его. точно так же можно эмулировать нажатие кнопок и радиобаттонов в аутпост.
Ребят, поясните мне очень просто в чем фишка констант и переменных, все статьи которые нахожу - немогу понять, объясните просто плизз..
константа - какоето число или выражение которое изменять нельзя, а переменные меняяються, их значения, просто?=\
Это общее определение. На примере: Локальные переменные не могут быть инициализированы по этому здесь применяем блок const Code: procedure TForm1.FormCreate(Sender: TObject); const a: array [0..9] of Integer = (0,1,2,3,4,5,6,7,8,9); begin ... end; также константу, можно проинициализировать без явного указания типа Code: const str = 'This text initialized'; N = 5; Также константы используются, для задания размера массива, для фиксированного вычесления определенного кол-ва, и это кол-во можно регулировать не вставляя каждый раз статически размерность массива, а правя константу объявленную выше, например: Code: const n=5; var matrix: array [0..n, 0..n] of Integer; И тебе необходимо изменить только константу
Обьясните дураку почему так работает Code: for i:=0 to razmer do begin BlockRead(myFile, oneByte, 1); oneByte:= oneByte+c; seek(myfile,i); Blockwrite(cryptfile,oneByte,1); seek(cryptfile,i); end; а так нет??? Code: for i:=0 to razmer do begin seek(myfile,i); BlockRead(myFile, oneByte, 1); oneByte:= oneByte+c; seek(cryptfile,i); Blockwrite(cryptfile,oneByte,1); end;
В первом случае ты указываешь переместить указатель с которого начнется чтение в файле из которого читаешь, а во втором ты перемещаешь указатель в файле в который пишешь. конечно же ты будешь читать один и тот же байт. вообще попробуй так делать Code: var FromName, ToName : String; myfile, cryptfile : file; NumRead, NumWritten: Integer; OneByte : Byte; begin AssignFile(myfile, FromName); Reset(myfile, 1); AssignFile(cryptfile, ToName); Rewrite(cryptfile, 1); repeat BlockRead(myfile, OneByte, 1, NumRead); oneByte:= oneByte+c; BlockWrite(cryptfile, OneByte, 1, NumWritten); until (NumRead = 0) or (NumWritten <> NumRead); CloseFile(myfile); CloseFile(cryptfile); end;
Вообще, винапи рулит, зачем такой мазохизм? Code: BOOL ReadFile( HANDLE hFile, // handle of file to read LPVOID lpBuffer, // address of buffer that receives data DWORD nNumberOfBytesToRead, // number of bytes to read LPDWORD lpNumberOfBytesRead, // address of number of bytes read LPOVERLAPPED lpOverlapped // address of structure for data ); BOOL WriteFile( HANDLE hFile, // handle to file to write to LPCVOID lpBuffer, // pointer to data to write to file DWORD nNumberOfBytesToWrite, // number of bytes to write LPDWORD lpNumberOfBytesWritten, // pointer to number of bytes written LPOVERLAPPED lpOverlapped // pointer to structure needed for overlapped I/O );
человек спрашивал конкретно за запись и чтение в посредством делфи а не апи, соответственно ответ вышел для конкретно его вопроса. если бы он не мог с апи разобраться то я бы исправил код на апи =)
Code: var s:string; n:integer; begin n:=123; s:=Memo1.Lines.Strings[n]; s:=ListBox1.Items.Strings[n]; end;
это такого вида будет loginassword? idsmtp1.Username:= idsmtp1.Password:= как сюда этот код вставить.
Code: var s:string; n:integer; begin n:=123; s:=Memo1.Lines.Strings[n]; s:=ListBox1.Items.Strings[n]; idsmtp1.Username:=copy(s,1,pos(':',s)-1); delete(s,1,pos(':',s)); idsmtp1.Password:=s; end;
Также можно юзать TStringList Code: var List: TStringList; begin List:=TStringList.Create; List.LoadFromFile('accounts.txt');
Открытие ярлыка через Delphi суть такова: нужно программно открыть ярлык нажатием на кнопочку. Теперь подробнее: Путь к ярлыку: C:\Program Files\Borland\Delphi7\Projects\A Содержимое: файл A.rc, файл brcc32.exe и файл brcc32.exe.lnk В ярлыке все нужное уже сделано. При его запуске вручную двумя кликами файл A.rc компилируется, и получается ресурс A.res То же самое необходимо теперь провернуть при помощи Delphi. Сделать такую строку: Code: ShellExecute(Handle, 'open', 'brcc32.exe', nil, s, SW_RESTORE); можно. Работает, но смысл? Его нет.. А такая строка: Code: ShellExecute(Handle, 'open', 'brcc32.exe.lnk', nil, s, SW_RESTORE); также никакого смысла не несет, потому что ярлык не запускается, следовательно ресурс не компилируется!! При попытке: Code: case ShellExecute(Handle, 'open', 'brcc32.exe.lnk', nil, s, SW_RESTORE) of 2: ShowMessage('wrong'); end; вылезает то самое сообщение 'wrong'.. кстати, s - это путь к папке типа PAnsiChar Как же мне сделать так, чтобы я смог провернуть необходимую мне операцию??? Помогите, пожалуйста, очень прошу.. уже исчерпал все, что знал.. А надо!! Мне это строить и жить помогает!
дабавь в раздел uses Code: uses ShellAPI; юзай так Code: ShellExecute(0, 'open' ,PChar(cmd), nil, nil, SW_SHOWNORMAL); где cmd это имя файла который надо открыть.
для t04: ну и что ты мне написал?.. я и так знаю, как юзается ShellExecute (я же это вполне подробно описал), и что нужно подкдлючить в uses. Программа ошибок не выдает, только вот brcc32.exe запустить я могу, а brcc32.exe.lnk - нет, а НАДО!!!