Yeah, but most modern search engines understand dynamic content these days.
I'd guess that they have changed the MIME encoding in the web listener so that (normally static) HTML pages are actually internally interpreted as dynamic. I think you can do that on Apache, is it possible on IIS as well ?
You can also use a custom 404 error page to handle this.
For instance, when someone tries to load up /topic/10158.html it will send it to your specified 404 page. That 404 page then gets the 10158 and displays the content just like the topic.asp page.
I've done something similar here as I develop my new personal website system. http://www.dbfanatics.com/id/erick This brings you to the default page of thier website. Everything comes from the database. If you go to http://www.dbfanatics.com/id/erick/2 it will bring you to the second page, and so forth. All it is doing is querying the database for the information.