Por que os campos e propriedades públicos são compatíveis de forma binária?

No trabalho diurno, trabalho em um aplicativo VB6 (eu sei, mas não zombe dos aflitos ...) que usa várias bibliotecas que escrevemos (também no sempre ilustre VB6). Uma dessas bibliotecas de suporte tinha uma carga de membros privados expostos por meio de propriedades públicas, e me pediram para remover as propriedades e promover as variáveis de membro privado em campos públicos com o mesmo nome que as propriedades originais.

Agora, não sou especialista em COM, mas tive a impressão de que cada item exposto de uma classe obtém seu próprio GUID. Como estaríamos passando de uma situação em que cada valor passava de 2 Guids (Property Get e Property Let) para um onde eles usavam apenas o (campo público), eu esperava que isso quebrasse a compatibilidade binária - mas parece que não fiz isso.

Alguém pode explicar o porquê?

questionAnswers(2)

yourAnswerToTheQuestion