procedure TForm1.Button2Click(Sender: TObject);
var
vector: Pointer;
fileStream: TMemoryStream;
size : Integer;
begin
fileStream.LoadFromFile('C:\1.pse');
size := fileStream.size;
CipherManager1.CipherClass := TCipherClass(TCipher_3TDES );
if not CipherManager1.CipherClass.SelfTest then
MessageBox(Handle, 'Self Test failed', 'Cipher Self Test', mb_Ok); vector := Pchar('00000000000000000000000000000000000000000000000000000000');
CipherManager1.InitKey( 'KKKKKKKKKKKKKKKKKKKKKKKKKK',vector ); CipherManager1.DecodeBuffer(fileStream.memory^, fileStream.memory^, size ); //此句报非法内存访问
end;end.
var
vector: Pointer;
fileStream: TMemoryStream;
size : Integer;
begin
fileStream.LoadFromFile('C:\1.pse');
size := fileStream.size;
CipherManager1.CipherClass := TCipherClass(TCipher_3TDES );
if not CipherManager1.CipherClass.SelfTest then
MessageBox(Handle, 'Self Test failed', 'Cipher Self Test', mb_Ok); vector := Pchar('00000000000000000000000000000000000000000000000000000000');
CipherManager1.InitKey( 'KKKKKKKKKKKKKKKKKKKKKKKKKK',vector ); CipherManager1.DecodeBuffer(fileStream.memory^, fileStream.memory^, size ); //此句报非法内存访问
end;end.
procedure TForm1.Button2Click(Sender: TObject);
var
vector: Pointer;
fileStream: TMemoryStream;
size : Integer;
begin
fileStream = TMemoryStream.create;
try
fileStream.LoadFromFile('C:\1.pse');
size := fileStream.size;
CipherManager1.CipherClass := TCipherClass(TCipher_3TDES );
if not CipherManager1.CipherClass.SelfTest then
MessageBox(Handle, 'Self Test failed', 'Cipher Self Test', mb_Ok); vector := Pchar('00000000000000000000000000000000000000000000000000000000');
CipherManager1.InitKey( 'KKKKKKKKKKKKKKKKKKKKKKKKKK',vector ); CipherManager1.DecodeBuffer(fileStream.memory^, fileStream.memory^, size ); //此句报非法内存访问
finally
filestream.free;
end;
end;
2、CipherManager1.DecodeBuffer方法的前两个参数传入同样内容?
size : Integer;
begin
fileStream.LoadFromFile('C:\1.pse');
fileStream还没有创建实例怎么能直接加载文件啊呵呵,我不写DELPHI,用JAVA的,路过看看的
不知有人用过Delphi encryption cipher这个控件没?