小编Mik*_*ery的帖子

无法加载文件或程序集'System.ValueTuple'

我有一个VS2017项目编译成一个DLL,然后由其他人编写的EXE调用.这两个项目都针对.Net Framework 4.6.2.我重写了我的一个DLL方法来返回一个元组,并导入了相关的NuGet包.当我编译项目时,它在输出目录中包含System.ValueTuple.dll,然后将其部署到我的DLL加载并由EXE调用的其他机器上.但是当EXE尝试调用返回元组的方法时,它会崩溃:

意外错误无法加载文件或程序集'System.ValueTuple,Version = 4.0.1.0,Culture = neutral,PublicKeyToken = cc7b13ffcd2ddd51'或其依赖项之一.该系统找不到指定的文件.

我不明白为什么它找不到文件,因为它和我的DLL在同一个文件夹中.显然,MS没有在.Net Framework 4.6.2中包含此程序集.

请注意,我的DLL使用machine.config文件在Windows中注册.我猜测,如果我也将System.ValueTuple.dll添加到这个文件它将工作(尚未尝试,不知道这是最好的方法,特别是长期.)有更好的方法,除了等待4.6 .3并希望它包括这个组件?

.net c# dll c#-7.0

42
推荐指数
7
解决办法
4万
查看次数

如何将FileDescriptor与HTTP URL一起使用

我希望这可以让Android MediaPlayer使用身份验证从URL流式传输,但现在我不太确定.我没有问题让它从开放服务器流(没有身份验证),但我没有看到任何方式告诉MediaPlayer使用基本身份验证,除非使用该FileDescriptor参数工作?所以我尝试了这个,但得到了以下错误:

IllegalArgumentException: Expected file scheme in URI http://www.myserver.com/music.mp3
Run Code Online (Sandbox Code Playgroud)

我的代码看起来像这样:

File f = new File(new URL("http://www.myserver.com/music.mp3").toURI());
FileInputStream fis = new FileInputStream(f);
mediaplayer.SetDataSource(fis.getFD());
Run Code Online (Sandbox Code Playgroud)

说a FileDescriptor只能用于本地file://URL而不是普通的http://URL 是否正确?如果是这样,有没有人对如何从需要使用Android进行身份验证的服务器进行流式传输有任何其他想法MediaPlayer

android file-descriptor file-uri

8
推荐指数
1
解决办法
4803
查看次数

Log4Net EventLogAppender未记录到自定义事件日志

添加了一个EventLogAppender,如下所示:

<appender name="eventLogAppender" type="log4net.Appender.EventLogAppender,log4net" >
    <mapping>
        <level value="ERROR" />
        <eventLogEntryType value="Error" />
    </mapping>
    <mapping>
        <level value="DEBUG" />
        <eventLogEntryType value="Information" />
    </mapping>
    <mapping>
        <level value="INFO" />
        <eventLogEntryType value="Information" />
    </mapping>
    <mapping>
        <level value="WARN" />
        <eventLogEntryType value="Warning" />
    </mapping>
    <logName value="NewLogName" />
    <applicationName value="AppName" />
    <layout type="log4net.Layout.PatternLayout,log4net">
        <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
    </layout>
</appender>
Run Code Online (Sandbox Code Playgroud)

它创建新的日志,NewLogName并添加应用程序名称为的Windows事件,AppName但它将事件添加到Application日志而不是NewLogName.

我已在注册表中更改权限,并且应用程序名称位于注册表中的正确位置.有任何想法吗?

.net log4net xmlconfigurator

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

当 URL 包含“]”时,使用 URL.getPort() 提取端口号时出现问题

我正在使用 java.net.URL.getPort() 从 URL 中提取端口号。大多数时候这效果很好。但是,当 URL 包含右括号字符“]”时,它将失败:

new URL("http://abc.com:123/abc.mp3").getPort();
 returns: (int) 123
Run Code Online (Sandbox Code Playgroud)

但如果 URL 包含“]”我得到:

new URL("http://abc.com:123/abc].mp3").getPort();
 returns: (int) -1
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

编辑#1:作为测试,我将相同的代码粘贴到非 Android Java 应用程序中,并且端口号已正确返回,因此这似乎是 Android SDK 的异常情况。

java url android

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

Html.fromHTML删除了双倍空格

也许这不是一个错误,因为文档没有详细说明fromHTML()究竟是什么,但它对我来说仍然是一个问题.如果提供的字符串按顺序包含两个或多个空格,则fromHTML()删除除1之外的所有空格:

Html.fromHtml("Test   123").toString()
     (java.lang.String) Test 123
Run Code Online (Sandbox Code Playgroud)

如果我用&nbsp;它替换空格似乎表现得如预期的那样,但是让我对程序的其他部分感到悲伤:

Html.fromHtml("Test&nbsp;&nbsp;123").toString()
     (java.lang.String) Test  123
Run Code Online (Sandbox Code Playgroud)

这是预期的行为吗?

android

4
推荐指数
2
解决办法
4603
查看次数

需要帮助修改正则表达式

有一天我会擅长正则表达式但是现在......

我正在使用以下表达式解析一个查找MP3文件的HTML页面(可以正常工作):

"<A HREF=\"([^\"]+)\"[^>]*>([^<]+?)\\.mp3</A>"
Run Code Online (Sandbox Code Playgroud)

我现在想要搜索MP3和OGG文件.看起来像一个简单的OR修改(.mp3 || .ogg),但我不太确定我是如何把它放在那里的?有关详细信息,请参阅尝试使用Java正则表解析HTML目录列表中的链接.

java regex

0
推荐指数
1
解决办法
137
查看次数

标签 统计

android ×3

.net ×2

java ×2

c# ×1

c#-7.0 ×1

dll ×1

file-descriptor ×1

file-uri ×1

log4net ×1

regex ×1

url ×1

xmlconfigurator ×1