User Tag List

+ Trả lời chủ đề
Trang 1/2 12 CuốiCuối
Hiện kết quả từ 1 tới 10 của 14

Chủ đề: Windows Source Code

  1. #1
    nguyenthanhtungtinbk
    Guest

    Mặc định Windows Source Code

    Anh em có muốn bàn luận về vụ này không?

    Tùng có mấy cái link này:
    http://www.kuro5hin.org/story/2004/2/15/71552/7795
    http://www.betanews.com/article.php3?sid=1076674118

    Hackers are gonna go crazy :4:

  2. #2
    sourire
    Guest

    Mặc định

    Troi oi, xem qua ma dau het ca dau, chong het ca mat. :4:

  3. #3
    nguyenthanhtungtinbk
    Guest

    He he look at this

    Check Disk Utility Tools CODE

    Mã:
    //======================================================================
    //
    // Chkdskx
    //
    // By Sijo K Jose
    // SIJO Soft Corp.
    // http://www.sijo.8k.com
    //
    // Chkdsk clone that demonstrates the use of the FMIFS file system
    // utility library.
    //
    //======================================================================
    #include <windows.h>
    #include <stdio.h>
    #include "..\fmifs.h"
    #define _UNICODE 1
    #include "tchar.h"
    
    //
    // Globals
    //
    BOOL	Error = FALSE;
    
    // switches
    BOOL	FixErrors = FALSE;
    BOOL	SkipClean = FALSE;
    BOOL	ScanSectors = FALSE;
    BOOL	Verbose = FALSE;
    PWCHAR  Drive = NULL;
    WCHAR	  CurrentDirectory[1024];
    
    //
    // FMIFS function
    //
    PCHKDSK   Chkdsk;
    
    
    //----------------------------------------------------------------------
    //
    // PrintWin32Error
    //
    // Takes the win32 error code and prints the text version.
    //
    //----------------------------------------------------------------------
    void PrintWin32Error( PWCHAR Message, DWORD ErrorCode )
    {
    	LPVOID lpMsgBuf;
     
    	FormatMessageW( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM,
    					NULL, ErrorCode, 
    					MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),
    					(PWCHAR) &lpMsgBuf, 0, NULL );
    	_tprintf(L"%s: %s\n", Message, lpMsgBuf );
    	LocalFree( lpMsgBuf );
    }
    
    //--------------------------------------------------------------------
    //
    // CtrlCIntercept
    //
    // Intercepts Ctrl-C's so that the program can't be quit with the
    // disk in an inconsistent state.
    //
    //--------------------------------------------------------------------
    BOOL WINAPI CtrlCIntercept( DWORD dwCtrlType )
    {
    	//
    	// Handle the event so that the default handler doesn't
    	//
    	return TRUE;
    }
    
    
    //----------------------------------------------------------------------
    // 
    // Usage
    //
    // Tell the user how to use the program
    //
    //----------------------------------------------------------------------
    VOID Usage( PWCHAR ProgramName )
    {
    	_tprintf(L"Usage: %s [drive:] [-F] [-V] [-R] [-C]\n\n");
    	_tprintf(L"  [drive:]    Specifies the drive to check.\n");
    	_tprintf(L"  -F          Fixes errors on the disk.\n");
    	_tprintf(L"  -V          Displays the full path of every file on the disk.\n");
    	_tprintf(L"  -R          Locates bad sectors and recovers readable information.\n");
    	_tprintf(L"  -C          Checks the drive only if it is dirty.\n");
    	_tprintf(L"\n");
    }
    
    
    //----------------------------------------------------------------------
    //
    // ParseCommandLine
    //
    // Get the switches.
    //
    //----------------------------------------------------------------------
    int ParseCommandLine( int argc, WCHAR *argv[] )
    {
    	int i;
    	BOOLEAN gotFix = FALSE;
    	BOOLEAN gotVerbose = FALSE;
    	BOOLEAN gotClean = FALSE;
    	BOOLEAN gotScan = FALSE;
    
    
    	for( i = 1; i < argc; i++ ) {
    
    		switch( argv[i][0] ) {
    
    		case '-':
    		case '/':
    
    			switch( argv[i][1] ) {
    
    			case L'F':
    			case L'f':
    
    				if( gotFix ) return i;
    				FixErrors = TRUE;
    				gotFix = TRUE;
    				break;
    
    			case L'V':
    			case L'v':
    
    				if( gotVerbose) return i;
    				Verbose = TRUE;
    				gotVerbose = TRUE;
    				break;
    
    			case L'R':
    			case L'r':
    
    				if( gotFix ) return i;
    				ScanSectors = TRUE;
    				gotFix = TRUE;
    				break;
    
    			case L'C':
    			case L'c':
    
    				if( gotClean ) return i;
    				SkipClean = TRUE;
    				gotClean = TRUE;
    				break;
    
    			default:
    				return i;
    			}
    			break;
    
    		default:
    
    			if( Drive ) return i;
    			if( argv[i][1] != L':' ) return i;
    
    			Drive = argv[i];
    			break;
    		}
    	}
    	return 0;
    }
    
    
    //----------------------------------------------------------------------
    //
    // ChkdskCallback
    //
    // The file system library will call us back with commands that we
    // can interpret. If we wanted to halt the chkdsk we could return FALSE.
    //
    //----------------------------------------------------------------------
    BOOLEAN __stdcall ChkdskCallback( CALLBACKCOMMAND Command, DWORD Modifier, PVOID Argument )
    {
    	PDWORD percent;
    	PBOOLEAN status;
    	PTEXTOUTPUT output;
    
    	// 
    	// We get other types of commands, but we don't have to pay attention to them
    	//
    	switch( Command ) {
    
    	case PROGRESS:
    		percent = (PDWORD) Argument;
    		_tprintf(L"%d percent completed.\r", *percent);
    		break;
    
    	case OUTPUT:
    		output = (PTEXTOUTPUT) Argument;
    		fprintf(stdout, "%s", output->Output);
    		break;
    
    	case DONE:
    		status = (PBOOLEAN) Argument;
    		if( *status == TRUE ) {
    
    			_tprintf(L"Chkdsk was unable to complete successfully.\n\n");
    			Error = TRUE;
    		}
    		break;
    	}
    	return TRUE;
    }
    
    
    //----------------------------------------------------------------------
    //
    // LoadFMIFSEntryPoints
    //
    // Loads FMIFS.DLL and locates the entry point(s) we are going to use
    //
    //----------------------------------------------------------------------
    BOOLEAN LoadFMIFSEntryPoints()
    {
    	LoadLibrary( "fmifs.dll" );
    
    	if( !(Chkdsk = (void *) GetProcAddress( GetModuleHandle( "fmifs.dll"),
    			"Chkdsk" )) ) {
    
    		return FALSE;
    	}
    	return TRUE;
    }
    
    
    //----------------------------------------------------------------------
    // 
    // WMain
    //
    // Engine. Just get command line switches and fire off a chkdsk. This 
    // could also be done in a GUI like Explorer does when you select a 
    // drive and run a check on it.
    //
    // We do this in UNICODE because the chkdsk command expects PWCHAR
    // arguments.
    //
    //----------------------------------------------------------------------
    int wmain( int argc, WCHAR *argv[] )
    {
    	int badArg;
    	HANDLE volumeHandle;
    	WCHAR fileSystem[1024];
    	WCHAR volumeName[1024];
    	DWORD ******Number;
    	DWORD flags, maxComponent;
    
    	_tprintf(L"\nCHKDSKX V1.0 by Mr.Sijo K Jose");
    	_tprintf(L"\n\t        Kannur < Kerala");
    	_tprintf(L"\n\t        Phone  : 04982267554");
    	_tprintf(L"\n\t        Mobile : 04982310598");
    	_tprintf(L"\n\t        E-Mail : sijosoft@msn.com");
    	_tprintf(L"\n\t        SIJO Soft Corp. - http://www.sijo.8k.com");
    	_tprintf(L"\n=======================================================\n");
    	//
    	// Get function pointers
    	//
    	if( !LoadFMIFSEntryPoints()) {
    
    		_tprintf(L"Could not located FMIFS entry points.\n\n");
    		return -1;
    	}
    
    	//
    	// Parse command line
    	//
    	if( (badArg = ParseCommandLine( argc, argv ))) {
    
    		_tprintf(L"Unknown argument: %s\n", argv[badArg] );
    
    		Usage(argv[0]);
    		return -1;
    	}
    
    	// 
    	// Get the drive's format
    	//
    	if( !Drive ) {
    
    		if( !GetCurrentDirectoryW( sizeof(CurrentDirectory), CurrentDirectory )) {
    
    			PrintWin32Error( L"Could not get current directory", GetLastError());
    			return -1;
    		}
    
    	} else {
    
    		wcscpy( CurrentDirectory, Drive );
    	}
    	CurrentDirectory[2] = L'\\';
    	CurrentDirectory[3] = (WCHAR) 0;
    	Drive = CurrentDirectory;
    
    	//
    	// Determine the drive's file system format, which we need to 
    	// tell chkdsk
    	//
    	if( !GetVolumeInformationW( Drive, 
    						volumeName, sizeof(volumeName), 
    						&******Number, &maxComponent, &flags, 
    						fileSystem, sizeof(fileSystem))) {
    
    		PrintWin32Error( L"Could not query volume", GetLastError());
    		return -1;
    	}
    
    	//
    	// If they want to fix, we need to have access to the drive
    	//
    	if( FixErrors ) {
    
    		swprintf( volumeName, L"\\\\.\\%C:", Drive[0] );
    		volumeHandle = CreateFileW( volumeName, GENERIC_WRITE, 
    						0, NULL, OPEN_EXISTING, 
    						0, 0 );
    		if( volumeHandle == INVALID_HANDLE_VALUE ) {
    
    			_tprintf(L"Chdskx cannot run because the volume is in use by another process.\n\n");
    			return -1;
    		}
    		CloseHandle( volumeHandle );
    
    		//
    		// Can't let the user break out of a chkdsk that can modify the drive
    		//
    		SetConsoleCtrlHandler( CtrlCIntercept, TRUE );
    	}
    
    	//
    	// Just do it
    	//
    	_tprintf(L"The type of file system is %s.\n", fileSystem );
    	Chkdsk( Drive, fileSystem, FixErrors, Verbose, SkipClean, ScanSectors,
    				NULL, NULL, ChkdskCallback );
    
    	if( Error ) return -1;
    	return 0;
    }

  4. #4
    nguyenthanhtungtinbk
    Guest
    Còn nhiều code khác của Windows cũng bị lộ. Quả là một vụ lớn, nhưng rồi bọn Microsoft cũng sẽ fix thôi, tiếc là em down được có vài cái code :4: Sau đó server bị down!!! Giờ thì unavailable mất tiêu rùi.

    Anh em thấy chủ đề này hay thì vote vài lá nhé :lol:

  5. #5
    Quân Nhân Danh Dự
    Tham gia ngày
    Jan 2004
    Bài gửi
    1.404

    Mặc định

    Hay anh em khoa mình viết hẳn 1 cái HDH mới rồi đem bán. Cho lão Bill Gate thất nghiệp luôn.

  6. #6
    sourire
    Guest

    Mặc định

    Quote Nguyên văn bởi Nistelrooy
    Hay anh em khoa mình viết hẳn 1 cái HDH mới rồi đem bán. Cho lão Bill Gate thất nghiệp luôn.
    Ghê nhỉ, vậy cậu có thể cho biết đoạn mã nguồn trên viết gì không ?

  7. #7
    nguyenthanhtungtinbk
    Guest

    Mặc định

    Hay anh em khoa mình viết hẳn 1 cái HDH mới rồi đem bán. Cho lão Bill Gate thất nghiệp luôn.
    Lão ấy có thất nghiệp thì vẫn đủ tiền sống cả đời Mà kể cả lão không có xu nào chắc cũng chả phải ngồi đầu đường ăn xin ^_^

  8. #8
    Quân Nhân Danh Dự
    Tham gia ngày
    Jan 2004
    Bài gửi
    1.404

    Mặc định

    To Sourire: Ông không hiểu gì thì cứ nói thẳng ra nhá, không phải giả vờ đố tôi đâu nhá. Đoạn mã trên tất nhiên là để check disk. TÔi gợi ý thế thôi, còn lại ông tự suy nhá..

  9. #9
    Quân Nhân Danh Dự
    Tham gia ngày
    Jan 2004
    Bài gửi
    1.404

    Mặc định

    Em xin hỏi các bác mấy điều về Windows nhá:
    -Windows NT có phải là New Technology 0? Nếu đúng thì nó new ở chồ nào.
    -Win ME, XP, 2000, 9x về căn bản có khác nhau 0? Hay chỉ là sự phát triển của nhau.
    Mong các bác trả lời giúp.

  10. #10
    HUT's Student Avatar của alisa
    Tham gia ngày
    May 2003
    Bài gửi
    173

    Mặc định

    Ha

    Bac NiteoRoi này lớ ngớ quá

    nhưng các bác cứ trả lời đi

    em cũng thích nghe

    Ha ha

    vụ này hay quá nhưng rất tiếc là em đã chậm chân mất rồi

    ngoài cái code của bác Tùng ra thì em chẳng có cái nào

    Còn cái nào nữa thì tùng Post len luon đi.

    để sau này nghiên cứu

    Khà khà
    phuongvm
    Software Engineer
    lonely
    genius
    ***********************************
    Tiền là số 1.
    Tình là 0.5

+ Trả lời chủ đề
Trang 1/2 12 CuốiCuối

Thông tin chủ đề

Users Browsing this Thread

Hiện có 1 người đọc bài này. (0 thành viên và 1 khách)

Chủ đề tương tự

  1. Open-source community news
    Gửi bởi Nistelrooy trong mục Thư viện mã nguồn
    Trả lời: 12
    Bài cuối: 08-06-2007, 11:44 PM
  2. Có Bác nào biết code xem ảnh trên C không!
    Gửi bởi xmen_bk trong mục Lập Trình
    Trả lời: 6
    Bài cuối: 09-10-2006, 07:00 PM
  3. Windows XP Service Pack 2 hay Windows XP Media Edition 2005
    Gửi bởi ot_khong_cay trong mục Hệ điều hành Windows
    Trả lời: 8
    Bài cuối: 14-09-2005, 11:02 PM
  4. Open Source Group
    Gửi bởi The Fool trong mục Lập Trình
    Trả lời: 0
    Bài cuối: 07-07-2005, 12:23 AM
  5. Source kết bạn -làm quen
    Gửi bởi betaphack trong mục Các vấn đề CNTT khác
    Trả lời: 0
    Bài cuối: 21-01-2004, 09:54 PM

Từ khóa (Tag) của chủ đề này

Quyền viết bài

  • Bạn không thể gửi chủ đề mới
  • Bạn không thể gửi trả lời
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình


About svBK.VN

    Bách Khoa Forum - Diễn đàn thảo luận chung của sinh viên ĐH Bách Khoa Hà Nội. Nơi giao lưu giữa sinh viên - cựu sinh viên - giảng viên của trường.

Follow us on

Twitter Facebook youtube