小编Pic*_*are的帖子

在xp上找不到文件

我的应用附带的文本文件有一个奇怪的问题.

该文件包含一堆站点,当程序启动时,它将站点加载到一个数组中.

在Windows 7上,当我启动应用程序时,我没有收到任何错误.然而,在XP上我得到了c:\Document and setting\I\Application Data\fourmlinks.txt file not found. 奇怪的部分是我制作了一个带有内容的文本文件,我把它放在应用程序文件夹中.

这是我在我的代码中调用的方式:

string path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\fourmlinks.txt";
Run Code Online (Sandbox Code Playgroud)

我的问题是我无法创建新文件,因为它正在保存应用程序需要和正在使用的基本数据.

首次启动后,用户可以根据需要编辑文件.

我不确定为什么会这样,但这只发生在Windows XP上.

我怎么解决这个问题?

编辑


keyboardP建议检查我正在运行的窗口,然后通过它更改路径.所以我想出了这段代码:

 System.OperatingSystem osInfo = System.Environment.OSVersion;
            if (osInfo.Platform == PlatformID.Win32NT)
                path = Environment.SpecialFolder.LocalApplicationData + "\\fourmlinks.txt";
            else
                path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\fourmlinks.txt";
Run Code Online (Sandbox Code Playgroud)

甚至在Windows 7上我得到的问题,当我需要弄错.有没有办法确保我在XP或Windows 7上以不同的方式运行?


编辑2


使用操作系统的检查,我现在可以确定我是Windows 7或Windows XP.因此,代码运行在Windows 7上再次查找,但在Windows XP上,我收到一条不同的错误消息:

在此输入图像描述

我真的不知道我在程序中添加的路径如何成为错误说我要求的路径.

c# text file text-files winforms

6
推荐指数
1
解决办法
670
查看次数

用数组信息填充组合框

我正在尝试ComboBox用另一个类中的数组的 PART填充 a 。我必须制作一个应用程序来创建客户、库存和订单。在订单表单上,我试图分别从客户和库存类中的数组中提取客户 ID 和库存 ID 信息。数组中有多种类型的信息:客户 ID、姓名、地址、状态、邮编等;库存 ID、名称、折扣值和价格。

这是我的阵列设置如下:

public static Customer[] myCustArray = new Customer[100];

public string customerID;
public string customerName;
public string customerAddress;
public string customerState;
public int customerZip;
public int customerAge;
public int totalOrdered;
Run Code Online (Sandbox Code Playgroud)

这就是我的组合框的设置方式:

public void custIDComboBox_SelectedIndexChanged(object sender, EventArgs e)
{
    custIDComboBox.Items.AddRange(Customer.myCustArray);

    custIDComboBox.DataSource = Customer.getAllCustomers();
}
Run Code Online (Sandbox Code Playgroud)

c# arrays combobox

6
推荐指数
1
解决办法
3万
查看次数

从DatePicker获取日期格式为yyyy/MM/dd

我有一个WPF C#应用程序(.NET 4.0),我有一个日期选择器.我想知道是否可以将格式日期(日期选择器的文本属性)更改为yyyy/MM/dd格式.

我正在使用MVVM模式,所以我想知道XAML代码,如果可以在这个地方做到这一点.

c# wpf xaml datepicker mvvm

6
推荐指数
1
解决办法
1万
查看次数

如何区分由于连接不良而从服务器和NotFound返回的NotFound?

在Windows Phone上,我可以WebException使用StatusCode == HttpStatusCode.NotFoundif

  1. 服务器返回404
  2. 由于连接不良,无法找到服务器.

在Windows Phone上WebException的状态适用WebExceptionStatus.UnknownError于这两种情况.

如何1从案例中判断案件2

我观察到的是连接错误(找不到服务器)ResponseUri为空并且WebResponse标题包含0项目.

编辑
ResponseUri不是空的,而是OriginalString空的

这样做是否安全:

catch (WebException ex)
{
    switch (ex.Response.StatusCode)
    {
        ...
        case HttpStatusCode.NotFound:
            if (ex.Response.ResponseUri == null
                || string.IsNullOrEmpty(httpWebResponse.ResponseUri.OriginalString))
                DoServerNotFound();
            else
                DoServerReturned404();
Run Code Online (Sandbox Code Playgroud)

c# windows-phone-7

5
推荐指数
1
解决办法
430
查看次数

将pdf转换为来自url的流

我有一个PDF,主题是http://test.com/mypdf.pdf.

如何将PDF转换为Stream然后使用此Stream转换回PDF.

我尝试了以下但有例外(见图):

private static Stream ConvertToStream(string fileUrl)
{
    HttpWebResponse aResponse = null;
    try
    {
        HttpWebRequest aRequest = (HttpWebRequest)WebRequest.Create(fileUrl);
        aResponse = (HttpWebResponse)aRequest.GetResponse();
    }
    catch (Exception ex)
    {

    }

    return aResponse.GetResponseStream();
}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

c# pdf asp.net uri stream

5
推荐指数
2
解决办法
1万
查看次数

如果服务器在路由器后面,如何获取用户的公共 IP?

如果我的服务器在路由器后面,如何获取用户的公共 IP?

我想:

protected string GetIPAddress() 
{
    System.Web.HttpContext context = System.Web.HttpContext.Current;
    string ipAddress = context.Request.ServerVariables["HTTP_X_FORWARDED_FOR"];
    if (!string.IsNullOrEmpty(ipAddress))
    {
        string[] addresses = ipAddress.Split(',');
        if (addresses.Length != 0)
        {
            return addresses[0];
        }
    }
    return context.Request.ServerVariables["REMOTE_ADDR"]; 
}
Run Code Online (Sandbox Code Playgroud)

但我得到的只是路由器网关。

显然,REMOTE_ADDR在我的情况下不起作用,也不会HTTP_X_FORWARDED_FOR

关于如何在我的情况下获取用户的公共 IP 的任何想法?

谢谢。

c# asp.net ip router

5
推荐指数
1
解决办法
1872
查看次数

创建注册表项,而不是通常的

谷歌搜索,但我不知道如何创建一个注册表项本身,而不是所有教程中看到的子项字符串值.注册表就像一棵树枝和树叶,我想创建一个新的分支并添加一个叶子

|tree
|-branch
|  |-my branch
|-branch
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

更多信息让我更清楚,因为我被指向我不需要的东西;)

你单击其中一个注册表项,旁边是一个向下的箭头,你点击它,你得到更多的键可能与另一个箭头指向下更多的ketys,这就是我正在尝试创建一个"文件夹"看起来事情.我不确定我能解释多少但CreateSubKey对我没有这样的事情:

Key = Registry.CurrentUser.CreateSubKey("SOFTWARE\Microsof\game\addons\myaddons");
Run Code Online (Sandbox Code Playgroud)

现在,当我检查它时,没有名称的文件夹式图标 myaddons

.net c#

5
推荐指数
1
解决办法
6296
查看次数

将位图转换为 WebP 图像?

有人知道是否可以使用 C# 将 a 转换BitmapWebP图像吗?

\n\n

一直在 Google 搜索,但找不到任何有关 C# 的信息。我发现了这个:\n mc-kay/libwebp-sharp \xc2\xb7 GitHub但它似乎没有将位图转换为WebP格式。

\n\n

有任何想法吗?

\n

c# bitmap image-conversion webp

5
推荐指数
1
解决办法
1万
查看次数

在mvc mini profiler中限制HttpRuntime缓存存储

  1. 我相信mvc mini profiler会将所有响应时间存储在HttpRuntime缓存中.
    如果我错了请告诉我,但如果是这样的话,那么这个缓存的最大限制是多少?在缓存已满之前,它可以分析多少个操作?我们使用迷你探查器来分析测试套件的操作,测试套件会随着时间的推移而增长,所以我很担心这个问题.我应该担心吗?

  2. 在相关的说明.当所有测试都被分析后,我只需在迷你探查器的类中调用该Save方法SqlServerStorage.并且所有响应时间都保存到SQL Server数据库中.有没有什么方法可以Save更频繁地调用该方法而无需一次又一次地启动和停止探查器?我们只是在测试套件的开头启动它,并在所有测试都被分析后结束它.我们将该MiniProfilers表的一个条目视为一个分析会话.现在我不能多次调用'Save'方法,因为MiniProfilerId每次调用它都需要一个新的方法.

有什么建议?

c# mvc-mini-profiler mvcminiprofiler

5
推荐指数
1
解决办法
499
查看次数

AcmNotPossible 调用 acmStreamOpen,naudio

我正在尝试转换

PCM S16 LE (araw)
Mono, Sample rate 22050, Bit pr. sample 16 
Run Code Online (Sandbox Code Playgroud)

PCM mulaw (PCM MU-LAW)
Mono, Sample rate 8000hz, Bit pr. sample is 8. 
Run Code Online (Sandbox Code Playgroud)

WaveFormat.CreateMuLawFormat(8000,1)或者甚至是更通用的WaveFormat.CreateCustomFormat,我指定WaveFormatEncoding与源流相同的内容会抛出相同的异常。

AcmNotPossible calling acmStreamOpen
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么吗?

任何线索将不胜感激。

c# wav naudio

5
推荐指数
1
解决办法
7229
查看次数