Revit API Forum
Welcome to Autodesk’s Revit API Forums. Share your knowledge, ask questions, and explore popular Revit API topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Active window name

6 REPLIES 6
SOLVED
Reply
Message 1 of 7
Frigotherm
1179 Views, 6 Replies

Active window name

Hi everybody!

 

whats the best way (in c#) to get the active window name? (for example the name of the drawing window, the name of the main app window, etc...)

 

if possible without using the windows api..

 

thank you

 

best regards

 

Frigo

6 REPLIES 6
Message 2 of 7
Joe.Ye
in reply to: Frigotherm

 

Hi Frigo,

 

Are your talking about Revit? And want to get the Revit's active view's name and Revit main frame name?

 

The simplest way to get the active Revit view name is: 

 

View class name + ": " + view name + " - " + ProjectName.

 

 

For example: Floor Plan: 2 - Mech - Project1

 

Floor Plan is the view class name.

Project1 is the project name.

 

The active view name can be easily get by : doc.ActiveView.Name property.

 

 

With regard to get the Revit's main app name, there is no straightforward Revit APi can be used. You need to resort to the windows API, I think.

 

 



Joe Ye
Contractor
Developer Technical Services
Autodesk Developer Network
Message 3 of 7
Revitalizer
in reply to: Joe.Ye

Hi all,

 

if talking about the main window, the title displayed consists also of product type and year, which can be got by Application.VersionName and Application.VersionNumber.

Window title may change to a shorter string if window is resized.

Also, in a zero-document state, title looks like "[Recent files]", but this depends on Revit's current language.

 

 

Cheers,

Revitalizer




Rudolf Honke
Software Developer
Mensch und Maschine





Message 4 of 7
Joe.Ye
in reply to: Revitalizer

 

Hi Revitalizer,

 

Good idea to compose the caption string. Normally this should work fine to get the correct string.

 

However there are situations the caption is different. For example, the Revit used by the ADN partners, there is a sub-string  "Not for resale version" in the caption string, the other parts are the same. There maybe some other situations, for example , the Revit education version.

 

Cheers,

 



Joe Ye
Contractor
Developer Technical Services
Autodesk Developer Network
Message 5 of 7
Revitalizer
in reply to: Frigotherm

Hi joe.ye,

 

yes, I know that there are special strings for special versions.

Also, these strings are localized (as the "[Recent files]" string is).

 

After all, I think there is no possibility to get the main window title string except using Windows API functions.

I do not see why not to do so, by the way.

 

 

 

Best regards,

Revitalizer




Rudolf Honke
Software Developer
Mensch und Maschine





Message 6 of 7
Revitalizer
in reply to: Revitalizer

Hi all, what about this:

 

System.Diagnostics.Process.GetCurrentProcess().MainWindowTitle

I haven't tested this, but maybe it may help you.

 

 

Cheers,

Revitalizer




Rudolf Honke
Software Developer
Mensch und Maschine





Message 7 of 7
Joe.Ye
in reply to: Revitalizer

 

Cool, I confirmed the result is correct. 



Joe Ye
Contractor
Developer Technical Services
Autodesk Developer Network

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk DevCon in Munich May 28-29th


Rail Community