简体   繁体   English

C#AccessViolationException

[英]C# AccessViolationException

I am installing a ttf file into my C:/Windows/Fonts folder from my C# WPF application.While installing I am getting System.AccessViolation Exception. 我正在从C#WPF应用程序将ttf文件安装到C:/ Windows / Fonts文件夹中。在安装过程中,我遇到了System.AccessViolation异常。 My code is below: 我的代码如下:

int result = -1;
            int error = 0;
            var windowsDirectory = Environment.GetEnvironmentVariable("SystemRoot") + "\\Fonts\\";
            var directoryInfo = new DirectoryInfo("../../Assets/Fonts");

            foreach (var file in directoryInfo.GetFiles())
            {
                result = AddFontResource((new FileInfo(windowsDirectory + file.Name)).ToString());
                error = Marshal.GetLastWin32Error();
                if (error != 0)
                {
                    System.Diagnostics.Debug.WriteLine(new Win32Exception(error).Message);
                }
                else
                {
                    System.Diagnostics.Debug.WriteLine((result == 0) ? "Font is already installed." :
                                                      "Font installed successfully.");
                }
            }

How do Iresolve my issue 我该如何解决我的问题

如果异常确实是由于缺少管理员权限而引起的,则您可能需要阅读本文章,以了解如何为管理员权限设置应用程序配置。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM