09-26-2023 07:40 PM
I have no idea what the cause is, but every time I try to open the host application for the LabVIEW project, it crashes. fpga application and real time application are fine. If you have any ideas, could you please let me know the countermeasure?
09-26-2023 07:59 PM
If you have a single VI that crashes, why don't you attach it, tell us what version (year and if 32 or 64 bit) it is. Maybe one of us will be able to open it, take a look, and at least see if we get the same "We apologize for the inconvenience" Crash message.
Bob Schor
09-26-2023 08:11 PM
32bit. it's difficult to attach VI ...
09-26-2023 08:19 PM
Well, if you won't send your code to us to help you, you'll have to get one of us to come to you (I bet that will be pretty expensive) ...
Bob Schor
09-26-2023 08:48 PM
Good luck have fun
Troubleshooting LabVIEW Crashes
Obtaining a WinDbg Dump File to Troubleshoot Crashes in NI Software
11-16-2023 07:08 PM
I have a similar problem...
This is a simple DLL code for testing the connection function between EIGEN LIBRARY's matrix and LABVIEW's two-dimensional array.
Similar situations occur frequently.
NI version: 2023.1f276 (32-bit) WITH 64BIT WIN11.
#include <iostream>
#include <vector>
#include <Eigen\Dense>
#define DLLEXPORT
#include "DLL.h"
using namespace std;
using namespace Eigen;
typedef Matrix<double, Dynamic, Dynamic, RowMajor> RowMatrixXi;
_declspec (dllexport) void ConvertMat(double *DataArray[], int A_rows, int A_cols, double *ret_mat[], double *ptr)
{
/********************** LabVIEW Array -> Eigen Matrix **************************/
int nRow = A_rows;
int nCol = A_cols;
Map<RowMatrixXi> eigen_matrix( & DataArray[0][0], nRow, nCol);
/********************** Eigen Matrix --> LabVIEW Array **************************/
Map<RowMatrixXi> (&ret_mat[0][0], nRow, nCol) = eigen_matrix;
// eigen mat -> Labview 2d array
double*p = &eigen_matrix(0, 0);
// eigen mat -> Labview 1d array
std::vector<double> trans_1d;
trans_1d.assign(p, p + eigen_matrix.size());
for (int i = 0;i < eigen_matrix.size(); i++) {
ptr[i] = trans_1d[i];
}
}
int main(){return 0;}