Macro That Opens Resource File as Text

While this certainly isn't the most difficult of sequences it simply cries out to be automated. Therefore, in this article, I present you with a very simple macro that automates the entire process of opening a resource file in "text mode". Enjoy!

Code

'------------------------------------------------------
'FILE DESCRIPTION: Open Current Resource Script As Text
'------------------------------------------------------
sub OpenRCAsText()
'DESCRIPTION: Open Current Resource Script As Text
'AUTHOR: Roman A. Surma <xaos@mail.ru>

 if Windows.Count > 0 then

  rc_name = ActiveDocument.FullName

  if InStrRev( rc_name, ".rc" ) > 0 then
  'if we have .rc file - let's open it as text

   rc_wnd_name = ActiveWindow.Caption

   Documents.Open rc_name, "Text"

   'performing primitive search for resource in .rc file
   'TODO: enhance algorithm to search resource in proper
   'language section
   rc_part         = ".rc - "

   res_name_start  = InStr( rc_wnd_name, rc_part ) 
                   + Len( rc_part )

   res_name_end    = InStr( res_name_start, rc_wnd_name, " " )

   if res_name_end > res_name_start then

    res_name = Mid( rc_wnd_name, res_name_start, 
     res_name_end - res_name_start )

    'searching for regexp like "^ *IDD_DIALOG1"
    ActiveDocument.Selection.FindText "^ *" & res_name, 
     dsMatchFromStart + dsMatchRegExp

    'ActiveDocument.Selection.Cancel

    ActiveDocument.Selection.StartOfLine
   end if

  end if
 elseif Documents.Count >= 1 then
  rc_name = ActiveProject.FullName

  dot_pos = InStrRev( rc_name, "." )

  rc_name = Left( rc_name, dot_pos ) & "rc"

  on error resume next

  Documents.Open rc_name, "Text"

  if Err.Number < 0 then

   MsgBox( "Can not open resource file " & rc_name & " _
    "for this project: " & ActiveProject.Name )

  end if

  on error goto 0
 end if

end sub

Downloads

Download source (same code as above) - 1 Kb


Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Ever-increasing workloads and the challenge of containing costs leave companies conflicted by the need for increased processing capacity while limiting physical expansion. Migration to HP's new generation of increased-density rack-and-blade servers can address growing demands for compute capacity while reducing costly sprawl. Sponsored by: HP and Intel® Xeon® processors Intel, the Intel logo, and Xeon Inside are trademarks of Intel Corporation in the U.S. and/or other countries. HP is the sponsor …

  • The impact of a data loss event can be significant. Real-time data is essential to remaining competitive. Many companies can no longer afford to rely on a truck arriving each day to take backup tapes offsite. For most companies, a cloud backup and recovery solution will eliminate, or significantly reduce, IT resources related to the mundane task of backup and allow your resources to be redeployed to more strategic projects. The cloud - can now be comfortable for you – with 100% recovery from anywhere all …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds