Hay algo que debes tener en cuenta y son las rutas
Relativas y rutas
Absolutas, asi como esta el code que posteaste estas usando una
Absoluta y solo funcionara mientras la maquina tenga un disco duro
"Q:" debes usar la ruta relativa, algo como esto:
Cita: archivo = Server.MapPath & "\Catalogo.pdf"
Asi, el archivo sera buscado, en el mismo directorio donde se encuentra la aplicacion, sin importar que particion sea.
¿Y esto es una aplicacion Webforms o Winforms?
Saludos