Por que meu aplicativo .net exige confiança total?

Desenvolvi um aplicativo .net 3.0, implantado usando o clickonc

Gostaria de passar da confiança total para a confiança parcial para facilitar a implantaçã

Eu tentei a ferramenta "Calcular permissões" na guia "Segurança" do meu projeto no visual studio, e a resposta é bastante clara:

---------------------------
Microsoft Visual Studio
---------------------------
This application requires full trust to run correctly.

No entanto, não consegui descobrir por que é necessária confiança total. Tentei alterar as configurações de segurança para "confiança parcial", mas o aplicativo gera uma SecurityException imediatamente após o lançamento:

System.Security.SecurityException   {"Request failed.", Action= "System.Security.Permissions.SecurityAction.LinkDemand"
   at MyNameSpace.Program.Main(String[] args)
   at System.AppDomain._nExecuteAssembly(Assembly assembly, String[] args)
   at System.AppDomain.nExecuteAssembly(Assembly assembly, String[] args)
   at System.Runtime.Hosting.ManifestRunner.Run(Boolean checkAptModel)
   at System.Runtime.Hosting.ManifestRunner.ExecuteAsAssembly()
   at System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext, String[] activationCustomData)
   at System.Runtime.Hosting.ApplicationActivator.CreateInstance(ActivationContext activationContext)
   at System.Activator.CreateInstance(ActivationContext activationContext)
   at Microsoft.VisualStudio.HostingProcess.HostProc.RunUsersAssemblyDebugInZone()
   at System.Threading.ThreadHelper.ThreadStart_Context(Object state)
   at System.Threading.ExecutionContext.runTryCode(Object userData)
   at System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Threading.ThreadHelper.ThreadStart()

meu software provavelmente não precisa de confiança total (eu apenas conecto a um servidor da Web usando https e acesso o sistema de arquivos somente mediante solicitação do usuário, para fins de importação / exportaçã

Como descobrir por que meu aplicativo exige confiança total?

questionAnswers(7)

yourAnswerToTheQuestion