Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/278.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
使用jni4net生成.java outof.dll_Java_C#_Dll_Java Native Interface_Jni4net - Fatal编程技术网

使用jni4net生成.java outof.dll

使用jni4net生成.java outof.dll,java,c#,dll,java-native-interface,jni4net,Java,C#,Dll,Java Native Interface,Jni4net,我有我的c#类库 using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Text; using System.Threading; using System.Threading.Tasks; using Keyence.IV.Sdk; using System.Reflection; namespace JavaKameraSchnittstelle {

我有我的c#类库

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Keyence.IV.Sdk;
using System.Reflection;
namespace JavaKameraSchnittstelle
{

public class KeyenceKameraSchnittstellen
{   
    private IVisionSensor[] sensor;
    private VisionSensorStore store;
    private List<byte[]> images;
    private DateTime lastUpdate;
    private bool[] areConnected;


    public KeyenceKameraSchnittstellen()
    {
    ...
    }

    //Listner
    public void ImageAcquired(object sender, ImageAcquiredEventArgs e)
    {
    ...
    }

    public void startTickTack()
    {
    ...
    }

    private void setImageAquiredListener()
    {
        ...
    }

    private void readIniDatei()
    {
       ...
    }

    private void init()
    {
        ...
    }

    private System.Net.IPAddress getLocalIp()
    {
        ...
    }

    public IVisionSensor[] getVisionSensoren()
    {
        ...
    }

    public List<byte[]> getImages()
    {
        ...
    }

    public bool[] getAreConnected()
    {
       ...
    }
}
}
我对c不熟悉。我在Assembly.LoadFile()中找到了一些东西,,但实际上无法对其执行任何操作

错误在哪里?我为什么会出现这个错误:

找不到“Keyence”命名空间


感谢您阅读。

您应该添加build.cmd文件的内容

假设您的
build.cmd
相当于

Csc.exe/nologo/warn:0/reference:..\lib\jni4net.n-0.8.9.0.dll/out:work/helloworldfromchr.exe/target:exe Program.cs

这看起来像是一种编译C#程序的方法

错误是CS0400

在全局命名空间中找不到类型或命名空间名称“identifier”(是否缺少程序集引用?)

本质上,您的
build.cmd
找不到另一个程序集-
Keyence.IV.Sdk.dll

您可以通过
/reference:
选项添加它,以便编译器
Csc.exe
可以找到程序集。编辑
build.cmd
文件,并为在Visual Studio项目参考中添加的附加程序集添加附加的
/reference:
部分


您可以查看完整的编译器选项

谢谢。在我添加了´/reference“path”之后,它就工作了。
Z:\bwulf\GeneratedSchnittstelle>build.cmd
compile classes
JavaKameraSchnittstelle.j4n.jar
JavaKameraSchnittstelle.j4n.dll clr\javakameraschnittstelle\KeyenceKameraSchnittstellen.generated.cs(58,165): error CS0400: Der Typ- oder Namespacename
        'Keyence' konnte im globalen Namespace nicht gefunden werden. (Fehlt ein Assemblyverweis?) clr\javakameraschnittstelle\KeyenceKameraSchnittstellen.generated.cs(79,85): error CS0400: Der Typ- oder Namespacename
        'Keyence' konnte im globalen Namespace nicht gefunden werden. (Fehlt ein Assemblyverweis?) clr\javakameraschnittstelle\KeyenceKameraSchnittstellen.generated.cs(79,125): error CS0400: Der Typ- oder Namespacename
        'Keyence' konnte im globalen Namespace nicht gefunden werden. (Fehlt ein Assemblyverweis?) clr\javakameraschnittstelle\KeyenceKameraSchnittstellen.generated.cs(79,13): error CS0012: Der Typ
        'Keyence.IV.Sdk.IVisionSensor' ist in einer nicht referenzierten Assembly definiert. Fügen Sie einen Verweis auf        die Assembly 'Keyence.IV.Sdk, Version=1.1.0.0, Culture=neutral, PublicKeyToken=null' hinzu. z:\bwulf\KameraSchnittstelle\JavaKameraSchnittstelle.dll: (Position des Symbols für den vorherigen Fehler)