小编Cam*_*arl的帖子

如何包装32位.dll以便它可以在64位操作系统中运行

所以,我一直在使用JPIB与我的java程序中的GPIB设备进行通信.但是,我遇到了麻烦.较新的系统基于64位操作系统.但是,jpib.dll文件是用32位编写的.我想不出它需要做出的真正64位依赖的任何类型的调用.

真正的麻烦在于,自2006年9月以来,JPIB项目还没有更新.我曾尝试通过SourceForge向开发者发送电子邮件,但我认为我不会随意使用它.

有没有人知道这方面的任何方法?或者知道如何(并且可以告诉我如何)将.dll重新编译为AMD-64合规性?

java dll winapi 32bit-64bit

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

从.txt文件Java读取的问题

因此,我开发了一个系统,只要用户尝试保存并且数据库连接不存在,就会将数据库插入/更新命令保存到文本文件中.文件中的每一行都是一个插入或更新命令.但是,我似乎遇到了一个问题.

有些文件似乎不想通过第一行读取.所有这些都有一个共同点 - 因为数据库中有与第一个插入对应的数据,我跳过它,因为输入后不允许更改该信息.但是,当我尝试读取下一行时,它会启动,因为该readLine()命令返回null(这会导致其余代码按预期失败).

我尝试while(!ready() Thread.sleep(500))在下一个之前添加一个readLine(),但它只是无限期地坐在那里(我让它在杀死JVM之前大约需要10分钟).我还尝试过只添加一个else块来检查数据库中是否存在数据,该数据暂停2秒,但问题仍然存在.

请注意,任何以不存在的数据插入开头的文件都可以正常工作.

有没有人对如何解决这个问题有任何想法?

编辑:这是从顶部到等待准备的代码

private static boolean loadExistingData()
{
    File dir = new File(Configuration.DBOutputDataLocation);
    // Attempt to create the directory in case it doesn't exist.
    if(!dir.exists())
    {
        if(!dir.mkdir())
        {
            return false;
        }
    }
    String[] existingFiles = dir.list();
    System.out.println(existingFiles.length);
    if(existingFiles == null || existingFiles.length == 0)
    {
        return false;
    }
    else
    {
        BufferedReader fileReader = null;
        DatabaseAccessor dba = DatabaseAccessor.getInstance();
        // Pull out the files, submit each one.
        for(int i …
Run Code Online (Sandbox Code Playgroud)

java file-io hang

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

将vector <double>推送到vector <vector <double >>

所以,我有这种情况:

vector<vector<double>> myVector; 
myVector.resize(somePreviousObject.size());
for(int i = 0; i < myVector.size(); i++)
{
    vector<double> tempVector;
    //Do some stuff that fills tempVector, in a loop
    //After loop:
    myVector[i].push_back(tempVector);
}
Run Code Online (Sandbox Code Playgroud)

但是,这会产生编译错误,说明:

no matching function for call to 'std:;vector<double, std::allocator<double > >::push_back(std::vector<double, std::allocator<double> >&)'
...stl_vector.h:733 note: candidates are: void std::vector<_Tp, _Alloc>::push_back(const _Tp&) [with _Tp = double, _Alloc = std::allocator<double>]
Run Code Online (Sandbox Code Playgroud)

我意识到使用向量向量不是性能友好的,但它仍然应该编译和执行,对吗?为什么不呢?

谢谢你的帮助.

c++ compiler-errors vector

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

标签 统计

java ×2

32bit-64bit ×1

c++ ×1

compiler-errors ×1

dll ×1

file-io ×1

hang ×1

vector ×1

winapi ×1