Fiz um teste em meu ambiente e tive o mesmo resultado.
Buscando mais informações a respeito, isso ocorre porque o provedor ISSBarueri que atende a cidade usando leiaute próprio na verdade possui uma particularidade.
Para fazer o cancelamento é necessário que um RPS tenha sido carregado, pois ele não possui um método próprio para cancelamento.
É o mesmo método NFeLoteEnviarArquivo que é usado.
Portanto, por favor, caso esteja utilizando o demo C#, para realizar seus testes, altere o clique do botão cancelar para que fique desta forma:
private void btnCancelarNFSe_Click(object sender, EventArgs e)
{
try
{
ACBrNFSe.LimparLista();
CheckNFSeLista();
var arquivoINI = Helpers.OpenFile("Arquivo Ini Cancelamento (*.ini)|*.ini|Todos os Arquivos (*.*)|*.*");
if (string.IsNullOrEmpty(arquivoINI)) return;
var ret = ACBrNFSe.Cancelar(arquivoINI);
rtbRespostas.AppendText(ret);
}
catch (Exception exception)
{
MessageBox.Show(exception.Message, @"Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
Em suma, a sequência de comandos correta para fazer o cancelamento para este provedor é:
NFSE_LimparLista
NFSE_CarregarINI
NFSE_Cancelar