bom dia.
Estou implementando a emissão da NFS-e IssDSF para Campinas, utilizando o ACBRNFSEx, em ambiente de homologação,
mas a alguns minutos o sistema começou a apresentar a mensagem
" 'Arquivo ...\Schemas\ISSDSF\1.00\ReqEnvioLoteRPS.xsd Não encontrado' "
Erro acontece nesse programa ACBrDFeWinCrypt
na linha 1169
// Obtendo as chaves do Certificado //
if CryptGetUserKey(mCryptProviderCert, dwKeySpec, hRSAKey) then
begin
// Tentando copiar a chave do Certificado para o nosso Provedor de Criptografia //
try
mBytesLen := 0;
if CryptExportKey( hRSAKey, hSessKey, PRIVATEKEYBLOB, 0, Nil, mBytesLen ) then // Calcula mBytesLen
begin
Memory := AllocMem(mBytesLen); // Aloca a memória para receber o Blob
try
if CryptExportKey( hRSAKey, hSessKey, PRIVATEKEYBLOB, 0, Memory, mBytesLen ) then
begin
if not CryptImportKey(mCryptProvider, Memory, mBytesLen, hSessKey, 0, hExpKey ) then
raise Exception.Create('CryptImportKey');
end
else
raise Exception.Create('CryptExportKey');
finally
Freemem(Memory);
end;
end
else
raise Exception.Create('CryptExportKey - len');
except
{ Não foi capaz de Exportar/Copiar a Chave para o nosso Provedor
de Criptografia, então vamos usar o Provedor de Criptografia do
Certificado }
CryptReleaseContext(mCryptProvider, 0);
mCryptProvider := mCryptProviderCert;
pfCallerFreeProv := False;
end;
end
Grato.