このMSDNの記事では、ProgIDは、長さの制限を含め、いくつかの正式な要件を満たす必要があると述べています。しかし、それらが違反された場合に何が起こるかについては何も言われていません。
コードベースでProgIDが39文字より長い場所をいくつか見つけましたが、ProgIDFromCLSID()とCLSIDFromProgID()を含め、すべてが正常に機能しているようです。
これらの要件に違反することは非常に簡単なので、そのような違反の実際に起こりうる結果を知ることは非常に興味深いでしょう。