McNeel Wiki
Saving Plug-in Information to a Text File
edit · print · help · all topics
Main Pages

AccuRender

Bongo

Brazil r/s

Developer

Flamingo

Penguin

Rhino Blogs

Rhino

Rhino Labs

Search

Languages

Česky

Deutsch

English

Español

Français

Italiano

Polish

日本語

한국어

中文(繁體)

中文(简体)

 
.
DeveloperRhinoScript
Version4.0
SummaryDemonstrates how to save the names of loaded and unloaded plug-ins to a text file.

Summary

There may be an occasion where you might find it useful to save the names of loaded and unloaded plug-ins to a text file, such as when you are debugging scripts or having problems with Rhino. The following sample script demonstrates this.

If you want to run the following script, just download it here.

Download the script

To run the script, just extract it from the zip file onto your desktop, then drag it on top of Rhino and drop it.

  '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  ' SavePlugInInfo.rvb -- April 2008
  ' If this code works, it was written by Dale Fugier.
  ' If not, I don't know who wrote it.
  ' Works with Rhino 4.0.


  Option Explicit 


  Sub SavePlugInInfo()


    Dim objShell, objNetwork, objFSO, objFolder, objStream
    Dim arrPlugIns, arrSorted, strPlugIn, strDesktop, strFile, strName, strMsg


    Set objShell = CreateObject("WScript.Shell")
    Set objNetwork = CreateObject("WScript.Network")
    Set objFSO = CreateObject("Scripting.FileSystemObject")


    strName = "RhinoPlugInInfo.txt"
    strDesktop = objShell.SpecialFolders("Desktop")
    strFile = strDeskTop & "\" & strName


    'On Error Resume Next
    Set objStream = objFSO.CreateTextFile(strFile, True)
    If Err Then
      MsgBox Err.Description
      Exit Sub
    End If


    objStream.WriteLine "**************************************************"
    objStream.WriteLine "Rhino Plug-in Info"
    objStream.WriteLine ""
    objStream.WriteLine "Computer Name = " & objNetwork.ComputerName
    objStream.WriteLine "Date and Time = " & CStr(Now)
    objStream.WriteLine "Rhino Build Date = " & CStr(Rhino.BuildDate)
    objStream.WriteLine "Rhino SDK Version = " & CStr(Rhino.SdkVersion)
    objStream.WriteLine "**************************************************"
    objStream.WriteLine ""


    objStream.WriteLine "**************************************************"
    objStream.WriteLine "Loaded Plug-ins"
    objStream.WriteLine "**************************************************"
    objStream.WriteLine ""


    arrPlugIns = Rhino.PlugIns(0, 1)
    If IsArray(arrPlugIns) Then
      arrSorted = Rhino.SortStrings(arrPlugIns)
      For Each strPlugIn In arrSorted
        objStream.WriteLine strPlugIn
      Next
    End If


    objStream.WriteLine ""
    objStream.WriteLine "**************************************************"
    objStream.WriteLine "Unloaded Plug-ins"
    objStream.WriteLine "**************************************************"
    objStream.WriteLine ""


    arrPlugIns = Rhino.PlugIns(0, 2)
    If IsArray(arrPlugIns) Then
      arrSorted = Rhino.SortStrings(arrPlugIns)
      For Each strPlugIn In arrSorted
        objStream.WriteLine strPlugIn
      Next
    End If


    objStream.Close


    strMsg = "A file named " & Chr(34) & strName & Chr(34) & VbCrLf
    strMsg = strMsg & "has been saved to your desktop." & VbCrLf & VbCrLf
    strMsg = strMsg & "If you are experiencing problems with Rhino," & VbCrLf
    strMsg = strMsg & "email this file to " & Chr(34) & "tech@mcneel.com" & Chr(34) & VbCrLf
    strMsg = strMsg & "along with a detailed description" & VbCrLf
    strMsg = strMsg & "of your problem."
    MsgBox strMsg, 64, "Rhinoceros"


  End Sub


  ' Rhino.AddStartUpScript Rhino.LastLoadedScriptFile
  ' Rhino.AddAlias "SavePlugInInfo", "_-RunScript (SavePlugInInfo)"


  ' Run it!
  Call SavePlugInInfo
rename · changes · history · subscriptions · lost and found · references · file upload