Aaron Hoffman
Aaron Hoffman

Reputation: 6962

Convert VB to C# - My.Application.Info.DirectoryPath

What are the best C# (csharp) equivalents for the following VB (VB.NET, VisualBasic) statements:

My.Application.Info.DirectoryPath

My.Computer.Clipboard

My.Computer.Audio.PlaySystemSound()

My.Application.Shutdown()

Upvotes: 17

Views: 28320

Answers (8)

M.D.G.
M.D.G.

Reputation: 11

The following

using System.IO;
Directory.GetCurrentDirectory()

Upvotes: 0

user2537701
user2537701

Reputation:

System.IO.Directory.GetParent(Application.ExecutablePath) 

is exactly the same as:

My.Application.Info.DirectoryPath

If you only do:

Application.ExecutablePath

You will get the executing file appended to the path, which may not be useful at all.

Upvotes: 1

jam40jeff
jam40jeff

Reputation: 2596

From decompiling Microsoft.VisualBasic.dll, the actual code that gets executed when calling My.Application.Info.DirectoryPath is:

Path.GetDirectoryName(
    new AssemblyInfo(
        Assembly.GetEntryAssembly() ?? Assembly.GetCallingAssembly()).Location);

Upvotes: 4

Shiveta
Shiveta

Reputation: 1

I think that you search is this sentence:

Application.StartupPath;
//Get file path without file name.

Upvotes: 0

Srinidhi
Srinidhi

Reputation: 479

My.Application.Info.DirectoryPath
  AppDomain.CurrentDomain.BaseDirectory

My.Computer.Clipboard
  System.Windows.Clipboard //(WPF)
  System.Windows.Forms.Clipboard //(WinForms)

My.Computer.Audio.PlaySystemSound()
  System.Media.SystemSounds.*.Play()

My.Application.Shutdown()
  System.Windows.Forms.Application.Exit() //(WinForms)
  or
  System.Windows.Application.Current.Shutdown()  //(WPF)
  or
  System.Environment.Exit(ExitCode)  //(Both WinForms & WPF)

Upvotes: 9

Aaron Hoffman
Aaron Hoffman

Reputation: 6962

If you are converting a WPF application, you can use the following:

System.Reflection.Assembly.GetExecutingAssembly().Location;
//gets file path with file name

System.Windows.Clipboard;

System.Media.SystemSounds.[Sound].Play();

System.Windows.Application.Current.Shutdown();

Upvotes: 3

TheCodeMonk
TheCodeMonk

Reputation: 2099

Application.ExecutablePath

System.Windows.Forms.Clipboard

System.Media.*

Application.Exit

Upvotes: 24

Mike Dinescu
Mike Dinescu

Reputation: 55750

This may not be exactly what you're looking for, but just in case you want to take a shortcut, if you add a reference to the Microsoft.VisualBasic assembly, you can use the nifty tools VB programmers have access via the MyServices namespace.

Upvotes: 2

Related Questions