08-12-2019 08:58 AM - edited 08-12-2019 09:27 AM
It would be useful to take a step back and try to determine what is the actual purpose of this. There have been many venues offered by you and one more by Gerd and none of them might be particularly helpful.
Particularly moving to a Windows XP VM won't really help anything here except that you might to be able to install the ASPI driver on there if that was used at all. If it was, depends on the lvSCSI.dll and how it interfaced to the SCSI interface. But the ASPI driver won't be able to interface to the USB device as it was specifically developed for the SCSI hardware from Adaptec and USB was still very much in its infancy when the last official ASPI driver version was released. Also use of the HP standard backup software is almost certainly only an option if the data was also written to the drive with that software. Otherwise the stream format is almost certainly different. When writing data to the drive you can't just stream only the file data to disk but also have to put extra information into the stream such as the actual filename, file attributes, security descriptors and other possible information such as alternate file streams on NTFS volumes. This is what the Microsoft Backup API does to some extend, but there still appears to be quite some intelligence needed by the backup application to handle things like alternate streams and hard (and soft) links (file entries that only point to another file elsewhere on the volume without containing actual data). Each backup application has its own way of structuring that meta data and inserting it into the data stream in some way.
Also even if you manage to get this working with the HP drive (which model is it by the way) those drives are all very much EOL (end of live) and at best available as refurbished devices from different online sources. How much effort do you want to put in this pretty much dead solution? Unless it is about rather important data on some existing tapes that needs to be restored, it would seem pretty much uneconomic to spend even a single week of effort on this and I would assume you already are approaching the one week threshold without even a possible solution in sight.
From what I read so far I assume the data was originally written to the tape drive from a LabVIEW application too, through the SCSI interface? Is the purpose of this exercise to just read back data from existing tapes or do you also need to (re)activate the write functionality of that app?
The cheapest solution by far might be to actually try to rebuild the original system, despite that it might be hard to get a working SCSI tape drive.
04-16-2021 05:52 AM - edited 04-16-2021 06:03 AM
Hi Ralf and all,
For future reference. I've done some work on reviving the USB dat drive, I'd like to copy files from USB dat drive to PC in Labview.
So found and installed a HP dat driver, implemented a "Read from USB DAT drive" program in visual C++, this is working fine. I can connect to and copy from USB dat drive.
I'd like to replicate this in labview, not sure how, so I created a dll that wraps up the C++ and imported the dll into labview;
in visual c++
int OpenTapeRO ()
{
tapeFilDes = CreateFile(
"\\\\.\\TAPE0",
GENERIC_READ,
0,
NULL,
OPEN_EXISTING,
0,
NULL );
if (tapeFilDes == INVALID_HANDLE_VALUE)
{
return (GetLastError() );
}
else
{
PrepareTape(
tapeFilDes,
TAPE_LOAD,
FALSE);
TAPE_SET_MEDIA_PARAMETERS TapeSetParams;
TapeSetParams.BlockSize = BLOCK_SIZE;
SetTapeParameters(
tapeFilDes,
SET_TAPE_MEDIA_INFORMATION,
&TapeSetParams);
return (0);
}
}
the NI Import wizard imported the dll, created a vi for the function and it worked in labview so far!