Actually, here's a little snippet which might help you from NeoGameBoy:
Code:
afx_msg VOID MFCWindow::OnFileOpen()
{
//============================================================
// Prompt the user for the ROM file to load.
//============================================================
TCHAR filter[] = "Gameboy ROM (*.GB)|*.GB|Gameboy Color ROM (*.GBC)|*.GBC||";
CFileDialog fileDialog(true, 0, 0, OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT, filter, this);
fileDialog.DoModal();
//============================================================
// Load the ROM file into memory.
//============================================================
CString file = fileDialog.GetPathName();
MessageBox(file);
mGameboy.loadGame( file.GetBuffer() );
file.ReleaseBuffer();
}