이것은이 프로세스를 더 잘 이해하는 데 도움이되는 학계의 질문입니다 ... 바이너리 호환성을 해결하는 방법을 알아 내려고하지 않아서 왜 시도하지 말아야하는지 설명 할 필요가 없습니다. 이 :)vb6 바이너리 호환성을 외면 함
내가 공공 회원이 vb6에서 DLL을 만들고 컴파일한다고 가정 해 봅시다. 사실, 적어도 하나는 컴파일하지 못하게 될지도 모른다고 생각합니다. 그래서 우리는 하나의 public 메소드를 생성한다고 가정 해 봅시다. 그러나 거기에는 dll이 컴파일되고 그렇지 않으면 무시됩니다.
이제는이 DLL과의 프로젝트 호환성을 설정하고 어떤 상황에서도이 DLL을 업데이트하거나 DLL의 업데이트 된 버전과의 호환성을 변경하지 않습니다.
이 시나리오에서는 vb6이 절대로 해당 중단 오류 메시지를 throw하지 않으며 실제로 호환성을 손상시킬 때도 각 컴파일에서 dll에 대해 동일한 UUID를 계속 사용한다고 생각합니다.
그러나 나는 그 dll에서 생성 한 클래스에 대해 생성 된 값이 매번 변경 될 것이라고 생각하고 있습니다. 그리고 dll을 컴파일하는 데 호환성 문제가 없을지라도이 dll을 참조하는 프로젝트에 대해서는 결국 호환성 문제가 발생합니다.
맞나요?
_actual_, _practical_ 관련 프로그래밍 문제는 여기에서 주제와 관련이 있습니다. 순수 학문적 질문은 Q & A 형식에 적합하지 않습니다. –
@TimPost 오, 확실히 실제적이고 실질적인 프로그래밍 문제가 관련되어 있으며 이는 전혀 순수한 학문적 질문이 아닙니다. 나는 사람들이 단지 "오, 좋은 생각이 아니란 말을하지 못하게하는 학문적 문제가 다소 많았다"고 말했다. 내가 좋아하는 사람들로부터 계속해서받는 메시지는 명확한 방식으로 제 질문을 구성하면 가장 좋은 대답을 이끌어내는 것이 "학계"와 같은 잘못된 용어를 보지 않는 것만큼이나 중요하지 않다는 것입니다. –
@TimPost 여하튼 추론을 설명 할 시간을내어 주셔서 감사합니다. –