Пример #1
0
int main(int argc, char *argv[])
{
  OFSTRUCT SourceOpenStruct1, SourceOpenStruct2;
  LONG ret;
  HFILE hSourceFile, hDestFile;

  if (argc < 2)
  {
      fprintf( stderr, "Usage: %s infile [outfile]\n", argv[0] );
      return 1;
  }
  hSourceFile = LZOpenFile(argv[1], &SourceOpenStruct1, OF_READ);
  if (argv[2])
      hDestFile = LZOpenFile(argv[2], &SourceOpenStruct2, OF_CREATE | OF_WRITE);
  else
  {
      char OriginalName[MAX_PATH];
      GetExpandedName(argv[1], OriginalName);
      hDestFile = LZOpenFile(OriginalName, &SourceOpenStruct2, OF_CREATE | OF_WRITE);
  }
  ret = LZCopy(hSourceFile, hDestFile);
  LZClose(hSourceFile);
  LZClose(hDestFile);
  if (ret <= 0) fprintf(stderr,"LZCopy failed: return is %ld\n",ret);
  return (ret <= 0);
}
Пример #2
0
// @pymethod int,(tuple)|win32lz|OpenFile|Creates, opens, reopens, or deletes the specified file. 
static PyObject *
PyLZOpenFile(PyObject *self, PyObject *args)
{
	TCHAR *fname;
	PyObject *obfname;
	int op;
	if (!PyArg_ParseTuple(args, "Oi:OpenFile", &obfname, &op ))
		// @pyparm string|fileName||Name of file to open
		// @pyparm int|action||Can be one of the wi32con.OF_ constants (OF_CREATE, OF_DELETE, etc)
		return NULL;
	if (!PyWinObject_AsTCHAR(obfname, &fname, FALSE))
		return NULL;
	// @pyseeapi LZOpenFile
	OFSTRUCT of;
	of.cBytes = sizeof(OFSTRUCT);
	INT ret = LZOpenFile(fname, &of, op);
	PyWinObject_FreeTCHAR(fname);
	if (ret<0)
		return ReturnLZError("LZOpenFile",ret);
	return Py_BuildValue("i(iiiis)",ret, of.fFixedDisk, of.nErrCode, of.Reserved1, of.Reserved2, of.szPathName);
}