Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Visual Studio ClickOnce、.NET和混合大小写_C#_.net_Visual Studio_Clickonce - Fatal编程技术网

C# Visual Studio ClickOnce、.NET和混合大小写

C# Visual Studio ClickOnce、.NET和混合大小写,c#,.net,visual-studio,clickonce,C#,.net,Visual Studio,Clickonce,我正在尝试使用ClickOnce部署将.NET 4.0应用程序发布到web服务器。实际应用程序已成功发布,但如果我从尚未安装.NET 4.0的计算机启动安装,安装程序将失败:当我单击下载链接时,会收到以下错误消息: 下载以下资源时出错: 查看发布的文件夹,Visual Studio在setup.exe旁边创建了三个文件夹:应用程序文件、dotnetfx40和windowsinstaller3\u 1 如果我将实际目录名从dotnetfx40更改为dotnetfx40,它会工作 我的“发布文件夹

我正在尝试使用ClickOnce部署将.NET 4.0应用程序发布到web服务器。实际应用程序已成功发布,但如果我从尚未安装.NET 4.0的计算机启动安装,安装程序将失败:当我单击下载链接时,会收到以下错误消息:

下载以下资源时出错:

查看发布的文件夹,Visual Studio在setup.exe旁边创建了三个文件夹:
应用程序文件
dotnetfx40
windowsinstaller3\u 1

如果我将实际目录名从
dotnetfx40
更改为
dotnetfx40
,它会工作

我的“发布文件夹位置”是一个文件路径(
\\\server\c$\…
等),“安装文件夹URL”是
http://server/app


我很惊讶,我没有在网上找到任何东西;我是否遗漏了一些明显的内容?

如果您的web服务器是*NIX机器,则文件名区分大小写。这意味着
dotnetfx40
dotnetfx40
是不同的文件,这可以解释为什么您在尝试下载一个(不存在的)文件时出错,以及为什么另一个工作。

如果您的web服务器是*NIX机器,那么文件名区分大小写。这意味着
dotnetfx40
dotnetfx40
是不同的文件,这可以解释为什么您在尝试下载一个(不存在的)文件时出错,另一种方法为何有效。

解决方法:我们将二进制文件从构建机器复制到目标机器,而不是从开发机器部署。

解决方法:我们将二进制文件从构建机器复制到目标机器,而不是从开发机器部署。

我假设
dotnetfx404
是输入错误?不,我们切换到将二进制文件从构建机器复制到目标机器,而不是从开发机器部署…我假设
dotnetfx404
是输入错误?不,我们切换到将二进制文件从构建机器复制到目标机器,而不是从开发机器部署…服务器操作系统是Windows Server 2008 R2。我更改了服务器上的目录名,这就是为什么之后它会工作。但显然这不是一个永久的解决方案,因为下一次发布将再次破坏目录名…服务器操作系统是Windows Server 2008 R2。我更改了服务器上的目录名,这就是为什么之后它会工作。但显然这不是一个永久的解决方案,因为下一次发布将再次破坏目录名。。。