小编nic*_*ity的帖子

FileSystemWatcher用于监视UNC路径

关于这个话题不乏问题,但我仍然遇到麻烦.这是我的情况.我有一个服务,我需要观看配置文件中指定的路径.当我使用本地驱动器时,它工作得很好.

但是,当我将其更改\\server2\secondary\temp\watch_folder为服务无法启动时.日志中的错误是

目录名称\\ server2\secondary\temp\watch_folder无效.

如果我将其直接复制到Windows资源管理器中,该文件夹打开正常 如果我将我的代码粘贴到旧的Winforms应用程序中,它可以正常工作.我已经尝试了所有"登录身份"帐户.我将其设置为使用管理员帐户,但仍然没有骰子.

这是我的代码:

_watcher = new FileSystemWatcher();
_watcher.Path = ConfigurationManager.AppSettings["WatchFolder"];
_watcher.NotifyFilter = NotifyFilters.LastWrite | NotifyFilters.FileName;
_watcher.Filter = "*.txt";
_watcher.Created += new FileSystemEventHandler(OnCreated);
_watcher.Error += new ErrorEventHandler(OnError);
_watcher.EnableRaisingEvents = true;
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我很茫然,此时我觉得我已经盯着它看了太久.我真诚地感谢任何帮助.

谢谢,尼克

编辑 以下是例外情况:

服务无法启动.System.ArgumentException:目录名\ server2\Secondary\temp\watch_folder无效. System.Service.File 上的FileWatcher.FileWatcher.Watch() 处的File.IO.FileSystemWatcher.set_Path
(String value )处于System.ServiceProcess.ServiceBase.ServiceQueuedMainCallback(Object state)中的FileWatcher.FileWatcher.OnStart(String [] args )


c# filesystemwatcher

22
推荐指数
2
解决办法
3万
查看次数

从Java调用C++ DLL

我正在使用Java作为一个小应用程序.它是对现有MFC项目的重写.我需要更改现有的dll以使用JNI从Java启用访问.所有这些Java的东西对我来说都是新的,所以当我阅读其他论坛帖子时,我遇到了一些麻烦并且感觉相当密集.在现有的DLL中我有这样的函数:

extern "C" __declspec(dllexport) bool Create()
{
     return TRUE;
}
Run Code Online (Sandbox Code Playgroud)

愚蠢的提问时间.如何正确设置它以供Java调用?

我试过这个:

JNIEXPORT jboolean JNICALL Create()
{
     return TRUE;
}
Run Code Online (Sandbox Code Playgroud)

我包括jni.h,一切都很好.但是,当我从Java调用它时,我得到UnsatisfiedLinkError.我是用Java调用它的:

public static native boolean CreateSession();

System.load("D:\\JavaCallTest.dll");
Create();
Run Code Online (Sandbox Code Playgroud)

有人可以向我推动正确的方向吗?我真诚地感谢任何帮助.

谢谢,

缺口

java dll java-native-interface

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

自定义CKEditor插件按钮未显示

觉得我应该已经能够跟踪这个了.我需要为CKEditor创建一个自定义插件(我使用的是4.3.1).要开始使用,请使用此处的指南(http://docs.ckeditor.com/#!/guide/plugin_sdk_sample_1).我下载了代码并将其放在我的ckeditor\plugins文件夹中.所以,现在我有ckeditor\plugins\abbr.我不确定我在做什么,但按钮没有显示在工具栏中.代码如下.我的问题是,我应该在哪里定义"abbr"额外插件?我是否在我定义stylesheetparser的_Edit.cshtml页面中执行此操作?或者把它放在config.js中?鉴于下面的设置不应该按钮显示在源按钮旁边?我是否需要将其包含在config.js中,或者插件代码是否需要处理?

如果我使用完整的工具栏,它确实会显示出来,但是当我自定义它时,它确实显示出来.

config.js

CKEDITOR.editorConfig = function (config) {
    config.toolbar = 'MyToolbar';
    config.forcePasteAsPlainText = true;
    //config.extraPlugins = 'abbr';
    config.ignoreEmptyParagraph = 'true'
  config.toolbar_MyToolbar =
    [
    { name: 'document', items: ['Preview', 'Print'] },
    { name: 'clipboard', items: ['Cut', 'Copy', 'PasteText', '-', 'Undo', 'Redo'] },
    { name: 'editing', items: ['Find', 'Replace', '-', 'SelectAll', '-', 'SpellChecker', 'Scayt'] },
    { name: 'basicstyles', items : [ 'Bold','Italic','Subscript','Superscript','-','RemoveFormat' ] },
        '/',
    { name: 'insert', items: ['Table', 'SpecialChar'] },
    { name: 'styles', items : [ 'Styles'] } …
Run Code Online (Sandbox Code Playgroud)

ckeditor

8
推荐指数
0
解决办法
4420
查看次数

从哪里可以获得 Microsoft.SqlServer.ManagedDTS 版本 15?

我有一个 SSIS 项目 (dtproj),可以在 VS 2017 中正常打开,我正在尝试在 Visual Studio 2019 中打开它。我安装了“SQL Server Integration Services Projects”扩展,并且还安装了 SSDT。当我打开解决方案时,它告诉我该项目不兼容。如果我重新加载该项目,我会收到一条消息:Could not load file or assembly 'Microsoft.SqlServer.ManagedDTS, Version 15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' or one of its dependencies. The system cannot find the file specified.

这是有道理的,因为当我查看时,C:\Windows\Microsoft.NET\assembly\GAC_MSIL\Microsoft.SqlServer.ManagedDTS我有版本 11、12、13 和 14。但没有 15。我需要安装什么才能获得版本 15?

visual-studio-2019

7
推荐指数
1
解决办法
6076
查看次数

使用F#创建插入语句

我每隔几个月就会使用一次F#,在它之间我似乎忘了一切,所以我希望你能原谅我的无知.我的下面的代码是从雅虎提取数据.这是一个很好的例子,代表了我需要做的事情.返回的第一行具有列标题.我需要获取数据(列表的尾部)并将其插入数据库.基于返回的列标题生成插入语句的最佳方法是什么(列标题与数据库列名称匹配)?

在下面的例子中dataWithHeaders.[0] 将包含"日期,开盘价,最高价,最低价,收盘价,成交量,调整收盘价".我应该只拿这个字符串并在标题周围放置括号来创建插入吗?然后在insertData中添加值作为参数?有更优雅的解决方案吗?

let url = System.String.Format("http://ichart.finance.yahoo.com/table.csv?s={0}&g=d&ignore=.csv", "FB")

let splitLineIntoArray (line : string) = 
    line.Split(",".ToCharArray())

let insertData (data : string[]) =
    // insert data
    ()

let client = new WebClient()
let dataWithHeaders = 
    client.DownloadString(url).Split(Environment.NewLine.ToCharArray())

let data =
    dataWithHeaders
    |> Array.toList
    |> List.tail
    |> List.map(splitLineIntoArray)
    |> List.iter insertData
Run Code Online (Sandbox Code Playgroud)

database f#

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

DDD并在域类中获取其他信息

我想我已经阅读了16,154个关于DDD和最佳实践的问题,博客文章,推文等.对这种类型的另一个问题道歉.假设我的数据库中有三个表,User,Department和UserDepartment.一切都很简单.我需要构建一个层次结构,显示用户可以访问哪些部门.问题是我还需要向他们有权访问的那些部门展示.

是否最好在我的用户类上使用GetDepartments()方法?现在我有一个GetDepartments用户服务(字符串userName),但我觉得这不是最佳解决方案.如果user.GetDepartments()是首选,然后我如何才能访问存储库获取父部门对于那些用户有权访问?

不要认为这很重要,但我正在使用实体框架.

public class User
{
    [Key]
    public int UserId { get; private set; }

    [Display(Name = "User Name")]
    public string UserName { get; private set; }

    [Display(Name = "Email")]
    public string Email { get; private set; }

    [Display(Name = "UserDepartments")]
    public virtual ICollection<UserDepartment> UserDepartments { get; private set; }

    public List<Department> GetDepartments()
    {
        // Should this be here? and if so, what's the preferred method for accessing the repository?
    }
}
Run Code Online (Sandbox Code Playgroud)

domain-driven-design ddd-repositories

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