C objetos em tempo de execução, limites de dll

Qual é a melhor maneira de projetar uma API C para dlls que lida com o problema de passar "objetos" que são dependentes de tempo de execução C (FILE *, ponteiro retornado por malloc, etc ...). Por exemplo, se duas dlls estiverem vinculadas a uma versão diferente do tempo de execução, meu entendimento é que você não pode passar um FILE * de uma dll para outra com segurança.

É a única solução para usar o API dependente do windows (que é garantido para trabalhar em dlls)? A API C já existe e é madura, mas foi projetada a partir de um POV unix, principalmente (e ainda tem que trabalhar em unix, é claro).

questionAnswers(4)

yourAnswerToTheQuestion