Definir atributo DllImport dinamicamente

Estou usando uma dll externa não gerenciada usando PInvoke e o atributo DllImport. por exemplo.

[DllImport("mcs_apiD.dll", CharSet = CharSet.Auto)]
private static extern byte start_api(byte pid, byte stat, byte dbg, byte ka);

Gostaria de saber se é possível alterar os detalhes do arquivo DLL (mcs_apiD.dll neste exemplo) dinamicamente de alguma maneira, se, por exemplo, eu quisesse construir contra outra versão da DLL

questionAnswers(2)

yourAnswerToTheQuestion