Как заполнить ProgID после создания ATL COM-объекта. Важность ProgID
Я пытаюсь создать com-объект, используя C++ ATL. В мастере добавления простых объектов ATL я забыл заполнить поле ProgID. Можно ли добавить ProgID позже? Я обнаружил, что он находится в файле *.rgs. Безопасно ли редактировать этот файл? Если да, как обращаться с пользовательским интерфейсом, который также требуется в синтаксисе определения в этом случае? Как я понял, ProgID важен, когда вы хотите создать COM-объект, например, с помощью команды CreateObject в VB. Каковы другие методы для создания com-объекта с поздним связыванием, когда ProgId отсутствует?
1 ответ
Да, безопасно редактировать файл.rgs. Это просто скрипт реестра, определяющий, куда ProgID будет вставлен в реестр. (При использовании C++ в Visual Studio мне кажется, что они не имеют столько автоматически сгенерированных файлов, которые не следует редактировать. Сгенерированные файлы обычно помечаются. (Как и заглушки и заголовки, которые генерируется из.idl файлов.))
Все, что делают мастера, это автоматически заполняет некоторые файлы, которые вам обычно нужно делать вручную. Знание того, что находится там, где действительно полезно, поэтому, если вы уже отследили этот бит, похоже, вы на правильном пути.