Bom dia,
eu uso a seguinte forma, para iniciar a aplicação no windows, esta em c#
#region Função para Iniciar Junto com Windows
/// <summary>
/// Adicionar chave d Regedit windows.
/// </summary>
/// <param name="parentKey">Nome da chave </param>
/// <param name="subKey">caminho da sub chave que deseja fazer a inserção.</param>
/// <param name="valueName">Nome da aplicação que ira para o regedit do Windows.</param>
/// <param name="value">Caminho da aplicação.</param>
public static void Iniciar_Aplicacao(RegistryKey parentKey, string subKey, string valueName, object value)
{
RegistryKey key;
{
try
{
key = parentKey.OpenSubKey(subKey, true) ?? parentKey.CreateSubKey(subKey);
key?.SetValue(valueName, value);
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "Click Soluções", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
#endregion
e para remover eu passo a seguinte função:
#region Função para Remover Inicialização do Windows
/// <summary>
/// Função para Remover Registro do Windows.
/// </summary>
/// <param name="parentKey">Registro para ser removido.</param>
/// <param name="subKey">a keu que deve remover.</param>
/// <param name="valueName">nome do regristo para remover.</param>
public static void Remover_Aplicacao(RegistryKey parentKey, string subKey, string valueName)
{
RegistryKey key;
try
{
key = parentKey.OpenSubKey(subKey, true);
key?.DeleteValue(valueName, false);
}
catch (Exception ex)
{
XtraMessageBox.Show(ex.Message, "Click Soluções", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
#endregion
espero te ajudar dessa forma, caso tenha duvida post aqui que tento te ajudar.