Q:

Declare a module in the current namespace for use with `module->exports`

I would like to use the function module->exports to find all of the exports provided by a module.  Unfortunately, the module passed to that function must be declared in the current namespace before the function can be used on it.  When I know what the module is statically this is no problem, I just require it into the current module and then use the function. 
However, if I don't know the module statically, and am passed in a module path index (that I know points to a valid module in the filesystem), I can't seem to get the module declared into the current namespace.  Say if I want to make a module-path-index->exports function:
(define (module-path-index->exports mpi)
  (parameterize ([current-namespace (make-base-namespace)])
    <stuff to load module path index into current-namespace>
    (if (module-declared?  mpi)
        (module->exports mpi)
        (error "Module not declared"))))

Any suggestions on how to declare the module? 
Update:
I can't just use namespace-reaquire here, as it seems to fail with module-path-indexs that come from the identifier-binding function.  For example, the following code:
#lang racket

(define binding (identifier-binding #'contract-continuation-mark-key))

(parameterize ([current-namespace (make-base-namespace)])
  (dynamic-require (first binding) (void))
  (module->exports (first binding)))

gives this error:
Language: racket, with debugging; memory limit: 8192 MB. 
. .  require: unknown module
  module name: #<resolved-module-path:"/Users/leif/racket/racket/collects/racket/contract/private/guts.rkt">

A:

Close!  But you need to resolve the module path index (first binding).  The function that does this is resolve-module-path-index from syntax/modresolve. 
#lang racket

(require syntax/modresolve)

(define binding (identifier-binding #'contract-continuation-mark-key))

(parameterize ([current-namespace (make-base-namespace)])
  (define resolved (resolve-module-path-index (first binding) (current-directory)))
  (dynamic-require resolved (void))
  (module->exports resolved))

