Initial
This commit is contained in:
163
uudecode/SCRAPS.TXT
Normal file
163
uudecode/SCRAPS.TXT
Normal file
@@ -0,0 +1,163 @@
|
||||
|
||||
#if 0
|
||||
BOOL UUEncode::encode(const String &srcPathFileName,const String &dstPathFileName)
|
||||
{
|
||||
int ch(0);
|
||||
char readBuff[45];
|
||||
int readCount;
|
||||
int byteCount;
|
||||
char *ptrBuff;
|
||||
String outLine;
|
||||
BYTE chByte;
|
||||
|
||||
if(srcPathFileName.isNull()||dstPathFileName.isNull())return FALSE;
|
||||
FileHandle readFile(srcPathFileName,FileHandle::Read,FileHandle::ShareRead);
|
||||
if(!readFile.isOkay())return FALSE;
|
||||
FileHandle writeFile(dstPathFileName,FileHandle::Write,FileHandle::ShareRead,FileHandle::Overwrite);
|
||||
if(!writeFile.isOkay())return FALSE;
|
||||
FileMap readMap(readFile);
|
||||
PureViewOfFile readView(readMap);
|
||||
::sprintf(outLine,"begin %d %s",644,srcPathFileName);
|
||||
writeFile.writeLine(outLine);
|
||||
while(readCount=readView.read(readBuff,45))
|
||||
{
|
||||
ch=chEncode(readCount);
|
||||
chByte=ch;
|
||||
writeFile.write(chByte);
|
||||
for(ptrBuff=readBuff,byteCount=readCount;byteCount>0;byteCount-=3,ptrBuff+=3)
|
||||
{
|
||||
ch=*ptrBuff>>2;
|
||||
ch=chEncode(ch);
|
||||
chByte=ch;
|
||||
writeFile.write(chByte);
|
||||
ch=(*ptrBuff<<4)&0x30|(ptrBuff[1]>>4)&0x0F;
|
||||
ch=chEncode(ch);
|
||||
chByte=ch;
|
||||
writeFile.write(chByte);
|
||||
ch=(ptrBuff[1]<<2)&0x3C|(ptrBuff[2]>>6)&0x03;
|
||||
ch=chEncode(ch);
|
||||
chByte=ch;
|
||||
writeFile.write(chByte);
|
||||
ch=ptrBuff[2]&0x3F;
|
||||
ch=chEncode(ch);
|
||||
chByte=ch;
|
||||
writeFile.write(chByte);
|
||||
}
|
||||
writeFile.write((BYTE)'\n');
|
||||
if(readCount!=45)break;
|
||||
}
|
||||
ch=('\0'?('\0'&0x3F)+' ':'`');
|
||||
writeFile.write((BYTE)ch);
|
||||
writeFile.write((BYTE)'\n');
|
||||
::sprintf(outLine,"end");
|
||||
writeFile.writeLine(outLine);
|
||||
return TRUE;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
|
||||
#if 0
|
||||
FILE_SHARE_READ equ 00000001h
|
||||
FILE_SHARE_WRITE equ 00000002h
|
||||
FILE_SHARE_DELETE equ 00000004h
|
||||
FILE_ATTRIBUTE_READONLY equ 00000001h
|
||||
FILE_ATTRIBUTE_HIDDEN equ 00000002h
|
||||
FILE_ATTRIBUTE_SYSTEM equ 00000004h
|
||||
FILE_ATTRIBUTE_DIRECTORY equ 00000010h
|
||||
FILE_ATTRIBUTE_ARCHIVE equ 00000020h
|
||||
FILE_ATTRIBUTE_NORMAL equ 00000080h
|
||||
FILE_ATTRIBUTE_TEMPORARY equ 00000100h
|
||||
FILE_ATTRIBUTE_COMPRESSED equ 00000800h
|
||||
FILE_ATTRIBUTE_OFFLINE equ 00001000h
|
||||
CREATE_NEW equ 00000001h
|
||||
CREATE_ALWAYS equ 00000002h
|
||||
OPEN_EXISTING equ 00000003h
|
||||
OPEN_ALWAYS equ 00000004h
|
||||
TRUNCATE_EXISTING equ 00000005h
|
||||
DELETE equ 00010000h
|
||||
READ_CONTROL equ 00020000h
|
||||
WRITE_DAC equ 00040000h
|
||||
WRITE_OWNER equ 00080000h
|
||||
SYNCHRONIZE equ 00100000h
|
||||
STANDARD_RIGHTS_REQUIRED equ 000F0000h
|
||||
STANDARD_RIGHTS_READ equ READ_CONTROL
|
||||
STANDARD_RIGHTS_WRITE equ READ_CONTROL
|
||||
STANDARD_RIGHTS_EXECUTE equ READ_CONTROL
|
||||
STANDARD_RIGHTS_ALL equ 001F0000h
|
||||
SPECIFIC_RIGHTS_ALL equ 0000FFFFh
|
||||
FILE_READ_DATA equ 0001h
|
||||
FILE_LIST_DIRECTORY equ 0001h
|
||||
FILE_WRITE_DATA equ 0002h
|
||||
FILE_ADD_FILE equ 0002h
|
||||
FILE_APPEND_DATA equ 0004h
|
||||
FILE_ADD_SUBDIRECTORY equ 0004h
|
||||
FILE_CREATE_PIPE_INSTANCE equ 0004h
|
||||
FILE_READ_EA equ 0008h
|
||||
FILE_WRITE_EA equ 0010h
|
||||
FILE_EXECUTE equ 0020h
|
||||
FILE_TRAVERSE equ 0020h
|
||||
FILE_DELETE_CHILD equ 0040h
|
||||
FILE_READ_ATTRIBUTES equ 0080h
|
||||
FILE_WRITE_ATTRIBUTES equ 0100h
|
||||
FILE_ALL_ACCESS equ STANDARD_RIGHTS_REQUIRED or SYNCHRONIZE or 1FFh
|
||||
FILE_GENERIC_READ equ STANDARD_RIGHTS_READ or FILE_READ_DATA or FILE_READ_ATTRIBUTES or FILE_READ_EA or SYNCHRONIZE
|
||||
FILE_GENERIC_WRITE equ STANDARD_RIGHTS_WRITE or FILE_WRITE_DATA or FILE_WRITE_ATTRIBUTES or FILE_WRITE_EA or FILE_APPEND_DATA or SYNCHRONIZE
|
||||
FILE_GENERIC_EXECUTE equ STANDARD_RIGHTS_EXECUTE or FILE_READ_ATTRIBUTES or FILE_EXECUTE or SYNCHRONIZE
|
||||
GENERIC_READ equ 80000000h
|
||||
GENERIC_WRITE equ 40000000h
|
||||
GENERIC_EXECUTE equ 20000000h
|
||||
GENERIC_ALL equ 10000000h
|
||||
#endif
|
||||
|
||||
FileReadData=0x0001,FileListDirectory=0x0001,FileWriteData=0x0002,
|
||||
FileAddFile=0x0002,FileAppendData=0x0004,FileAddSubDir=0x0004,
|
||||
FileCreatePipeInstance=0x0004,FileReadEA=0x0008,FileWriteEA=0x0010,
|
||||
FileExecute=0x0020,FileTraverse=0x0020,FileDeleteChild=0x0040,
|
||||
FileReadAttributes=0x0080,FileWriteAttributes=0x0100,
|
||||
FileAllAccess=StandardRightsRequired|Synchronize|0x1FF,
|
||||
FileGenericRead=StandardRightsRead|FileReadData|FileReadAttributes|FileReadEA|Synchronize,
|
||||
|
||||
enum Rights{ReadControl=0x00020000,WriteDAC=0x00040000,WriteOwner=0x00080000,Synchronize=0x00100000};
|
||||
enum Standard{StandardRightsRequired=0x000F0000,StandardRightsRead=ReadControl,
|
||||
StandardRightsWrite=ReadControl,StandardRightsExecute=ReadControl,
|
||||
StandardRightsAll=0x001F0000,SpecificRightsAll=0x0000FFFF};
|
||||
;FWRITE MACRO sFileInfo,ptrByte
|
||||
; LOCAL @@FWRITEsimpleWrite,@@FWRITEuseBuffer
|
||||
; cmp sFileInfo.FileInfo@@mBufferIndex,MaxLength ; compare buffer index to MaxLength
|
||||
; jl @@FWRITEsimpleWrite ; if it's less then insert char into buffer
|
||||
; WRITEFILE sFileInfo.FileInfo@@mhFileHandle,sFileInfo.FileInfo@@mszBuffer,MaxLength ; other wise
|
||||
; mov sFileInfo.FileInfo@@mBufferIndex,0000h ; set buffer index to zero
|
||||
; mov eax,offset sFileInfo.FileInfo@@mszBuffer ; move address of buffer to eax
|
||||
; mov sFileInfo.FileInfo@@mlpBufferPointer,eax ; move address of buffer to lpBufferPointer
|
||||
;@@FWRITEsimpleWrite: ; simple write sync address
|
||||
; cmp sFileInfo.FileInfo@@mlpBufferPointer,0000h ; is buffer pointer null?
|
||||
; jne @@FWRITEuseBuffer ; if not then just use it
|
||||
; mov eax,offset sFileInfo.FileInfo@@mszBuffer ; move address of buffer to eax
|
||||
; mov sFileInfo.FileInfo@@mlpBufferPointer,eax ; move address of buffer to lpBufferPointer
|
||||
;@@FWRITEuseBuffer: ; use buffer sync address
|
||||
; mov cl,byte ptr[ptrByte] ; move byte to write to cl
|
||||
; mov eax,sFileInfo.FileInfo@@mlpBufferPointer ; move address of buffer to eax
|
||||
; mov byte ptr[eax],cl ; move byte into buffer
|
||||
; inc sFileInfo.FileInfo@@mlpBufferPointer ; increment buffer pointer
|
||||
; inc sFileInfo.FileInfo@@mBufferIndex ; increment buffer index
|
||||
; mov eax,01h ; set return code
|
||||
;ENDM
|
||||
|
||||
|
||||
|
||||
// char strLine[128];
|
||||
// while(openFile.readLine((BYTE*)strLine));
|
||||
// openFile.writeFile((BYTE*)"I wonder what line this is?\n");
|
||||
// openFile.flushFile();
|
||||
//#if 0
|
||||
// byteCount=0;
|
||||
// DWORD elapsedTime(::GetTickCount());
|
||||
// while(openFile.readFile(&ptrByte))++byteCount;
|
||||
// elapsedTime=::GetTickCount()-elapsedTime;
|
||||
// elapsedTime/=1000L;
|
||||
// ::sprintf(strMessage,"%ld bytes read int %ld seconds\n",byteCount,elapsedTime);
|
||||
// ::MessageBox(::GetFocus(),strMessage,(LPSTR)"FileIO",MB_OK);
|
||||
//#endif
|
||||
// openFile.closeFile();
|
||||
Reference in New Issue
Block a user