Max does support this actualy and does a great job of it. You can do it in several ways.
if you are using the same rig with similar naming conventions you can save the envelope and weight data out to and file and load it back into the new character. If the vertex count and order has changed and you have weighted the verts with paint weights or weight table then this method will not work.
Another method if every thing is the same is to just copy the Skin modifier off of one character and paste it on another. We do this all the time to update a character mesh in an already animated scene.
Next method is more flexable because the vert count, size and shape of character can change all that you like. In the Tools Panel go to more and open SkinUtilities. Here you can select the original mesh, press bake to mesh, which will create a mesh with all the saved Skin data stored in it. Merge this mesh with the new character. Add Skin to the new character and add the bones to it. Select both the new mesh and the baked mesh and in the SkinUtilities press Import Skin Data From Mesh. Just so you know you can remodel the skin data mesh any way that you want to make it fit the new mesh. the closer that it is the better the result will be. You can also use this tool to extract weights from one side of a character and paste it to the other. You would only need to do this if the character wasn’t even close to being a mirror copy. You can just model up the data mesh to fit the other side and then import the data from it.