Application.UserAppDataPath Propiedad

Definición

Obtiene la ruta de acceso de los datos de aplicación de un usuario.

C#
public static string UserAppDataPath { get; }

Valor de propiedad

Ruta de acceso de los datos de aplicación de un usuario.

Ejemplos

En el ejemplo de código siguiente se muestran dos formularios y sale de la aplicación cuando se cierran ambos formularios. Cuando se inicia y sale la aplicación, se recuerda la posición de cada formulario. En este ejemplo se muestra cómo usar la UserAppDataPath propiedad para almacenar los datos de la aplicación para el usuario.

La clase MyApplicationContext hereda de ApplicationContext y realiza un seguimiento cuando se cierra cada formulario y sale del subproceso actual cuando ambos están. La clase almacena las posiciones de cada formulario para el usuario. Los datos de posición del formulario se almacenan en un archivo titulado Appdata.txt que se crea en la ubicación determinada por UserAppDataPath. El Main método llama Application.Run(context) a para iniciar la aplicación según .ApplicationContext

Este código es un extracto del ejemplo que se muestra en la información general de la ApplicationContext clase. Algunos códigos no se muestran con el fin de la brevedad. Consulte ApplicationContext para obtener toda la lista de código.

C#
private MyApplicationContext()
{
    _formCount = 0;

    // Handle the ApplicationExit event to know when the application is exiting.
    Application.ApplicationExit += new EventHandler(this.OnApplicationExit);

    try
    {
        // Create a file that the application will store user specific data in.
        _userData = new FileStream(Application.UserAppDataPath + "\\appdata.txt", FileMode.OpenOrCreate);
    }
    catch (IOException e)
    {
        // Inform the user that an error occurred.
        MessageBox.Show("An error occurred while attempting to show the application." +
                        "The error is:" + e.ToString());

        // Exit the current thread instead of showing the windows.
        ExitThread();
    }

    // Create both application forms and handle the Closed event
    // to know when both forms are closed.
    _form1 = new AppForm1();
    _form1.Closed += new EventHandler(OnFormClosed);
    _form1.Closing += new CancelEventHandler(OnFormClosing);
    _formCount++;

    _form2 = new AppForm2();
    _form2.Closed += new EventHandler(OnFormClosed);
    _form2.Closing += new CancelEventHandler(OnFormClosing);
    _formCount++;

    // Get the form positions based upon the user specific data.
    if (ReadFormDataFromFile())
    {
        // If the data was read from the file, set the form
        // positions manually.
        _form1.StartPosition = FormStartPosition.Manual;
        _form2.StartPosition = FormStartPosition.Manual;

        _form1.Bounds = _form1Position;
        _form2.Bounds = _form2Position;
    }

    // Show both forms.
    _form1.Show();
    _form2.Show();
}

private void OnApplicationExit(object sender, EventArgs e)
{
    // When the application is exiting, write the application data to the
    // user file and close it.
    WriteFormDataToFile();

    try
    {
        // Ignore any errors that might occur while closing the file handle.
        _userData.Close();
    }
    catch { }
}

Comentarios

Si no existe una ruta de acceso, se crea una en el formato siguiente:

Ruta de acceso base\CompanyName\ProductName\ProductVersion

Los datos almacenados en esta ruta de acceso forman parte del perfil de usuario que está habilitado para itinerancia. Un usuario móvil funciona en más de un equipo de una red. El perfil de usuario de un usuario móvil se mantiene en un servidor de la red y se carga en un sistema cuando el usuario inicia sesión. Para que se considere un perfil de usuario para la itinerancia, el sistema operativo debe admitir perfiles móviles y debe estar habilitado.

Una ruta de acceso base típica es C:\Documents and Settings\username\Application Data. Sin embargo, esta ruta de acceso será diferente si la aplicación de Windows Forms se implementa mediante ClickOnce. ClickOnce crea su propio directorio de datos de aplicación que está aislado de todas las demás aplicaciones. Para obtener más información, consulte Acceso a datos locales y remotos en aplicaciones ClickOnce.

Se aplica a

Producto Versiones
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

Consulte también