Jump to content











Photo
- - - - -

Looking for Technical Details on Windows Tools

sfc chkdsk fsck ntfs install drivers registry

  • Please log in to reply
6 replies to this topic

#1 Falkoner

Falkoner

    Newbie

  • Members
  • 16 posts
  •  
    United States

Posted 14 April 2014 - 02:24 PM

Hey all, I've got a large number of questions today, and I'm not really looking for specific answers, but rather, resources available for me to answer any questions I may have in various areas.

 

I'm planning on devoting quite a bit of time in the near future to the creation of a suite of offline tools for the diagnostic of malfunctioning Windows systems, and in particular, I would like to make this suite available, open-source, for use under a Linux environment.

 

In order to create this suite, I'm going to have to do some extensive reverse-engineering of various Windows tools, and attempt to recreate them, open-source, for cross-platform compatibility. So I'm hoping to find any information that anyone else knows relating to these tools who has already worked on them, to help me avoid re-reverse engineering the wheel. :P

 

Specifically, I would truly appreciate any technical information available about the following subjects:

 

Registry

Linux support for registry editing is fairly limited, although the project for NT Password Removal Tool appears to be open-source and looks like it's done most of the reverse-engineering already. If anyone has any other good details I should know when beginning to program for the registry, let me know, since it's a central part of most of these other tools.

 

CHKDSK vs fsck.ntfs(ntfsfix)

I've used fsck.ntfs in the past and found it... lacking. It seemed very crude and basic in comparison with the information and scanning of CHKDSK, so if anyone knows any details about exactly how CHKDSK works, and what would need to be changed in fsck.ntfs in order to duplicate/improve its effectiveness, I'm all ears.

 

SFC

System File Checker is a powerful tool that is definitely underused. However, I don't think it's been reverse-engineered much, so if anyone can point me to exactly what SFC compares against to detect corrupted OS files, I'll be extremely grateful. I hope to allow repairs from original disc WIM files in those cases where the cache fails to contain an uncorrupted file.

 

Driver Changes

I would love to create a Linux tool that utilizes the resources created by the various Driverpack teams, and I'm seriously thinking about basing it on DriverPack Solution's system or the Driver Installer Assistant setup. However, with a major twist. I would like to be able to update/add/remove drivers from an offline Windows. Since no one has done this previously, I assume there's either a major complication or a technical detail that makes it either extremely difficult or impossible, but if it's even remotely possible, please pass me any details about the Windows driver setup(registry details, etc.) and I'm willing to attempt it.

 

Add/Remove Programs

If anyone knows how to get access to the Add/Remove Programs list, I'd like to know the details. While I'll probably not attempt to create an offline manual uninstaller system, I think being able to see the installed programs of an offline system could be very helpful. Also, does Windows list anti-virus products separately for its "AntiVirus not installed" dialog?

 

Windows Installs, Repairs, and Updates

Essentially, I would like to convert WinNTSetup to Linux. I believe the author of the program frequents these forums, so "hi!" I'd love to see if this would be possible. On top of that, I'd like to attempt to perhaps bypass the Text Mode of the install, also implementing the Windows Repair Install for XP. Along with that, I'd really REALLY love to look into creating a custom Repair Install for Windows Vista/7/8. Perhaps the offline SFC would better serve this purpose, but I'd love to look into it. Specifically, I need to know how to rollback Windows Updates to allow a repair install to not cause major registry confusion.

 

It's a pretty big project, but I've been working with these various tools for years, and I believe I have the programming knowledge and time to pull this off, I just hope I can spend more time programming and less time trying to guess how Microsoft decided to program things.

 

Thanks in advance!


Edited by Falkoner, 14 April 2014 - 02:26 PM.


#2 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 14 April 2014 - 04:29 PM

With all due respect :), you don't seem like having already done much searching for the "previous art" :dubbio:

 

Some out of the many:

 

SFC

Search for posts by fdv (Fred de Vorck) on MSFN.ORG, looking for SFC.DLL, SFC_OS.DLL and SFCFILES.DLL as keywords.

The actual "expert" is Damian Bakowsky who is unfortunately MIA :ph34r: since a lot of time.

 

 

Offline registry

Look here:

http://reboot.pro/to...gistry-library/

http://reboot.pro/to...fline-registry/

(using a redistributable library)

and here:

http://reboot.pro/to...s-a-filesystem/

using a driver <- this is IMHO the "right" way, particularly if from a non-windows OS (if you cannot find some of the resources mentioned there, ask for them)

And don't forget this:

http://paullee.ru/regstry.html

The Registry Viewer can also write.

Finally, there is a never-finished tool by Nuno (which I believe will be happy to provide the (Delphi) sources if asked):

http://reboot.pro/to...egistry-editor/

 

Driver changes:

Your statement is not entirely correct, we have been changing drivers offline since years (though of course having more features and Open Source would be a good thing)

Related apps are mainly here:

http://www.911cd.net...hp?showforum=43

but see also this:

http://iknowu.dnsali...ntegrateDrv.htm

and - casually - some related talks are "recent":

http://reboot.pro/to...edisk/?p=183012

...

http://reboot.pro/to...edisk/?p=183409

 

Windows Installs, Repairs, and Updates

JFX is not around here anymore, but you can find him on MSFN.ORG alright:

http://www.msfn.org/...v33-v34-beta-1/

 

Also, these other "current" threads may be of interest to you:

http://reboot.pro/to...implementation/

http://reboot.pro/to...rdlinked-files/

 

If I am allowed a consideration, you sound like having put too much wood at the same time on the fire :ph34r:, maybe you could initially limit the scope to just one or two of the items. :unsure:

 

 

:duff:

Wonko



#3 Falkoner

Falkoner

    Newbie

  • Members
  • 16 posts
  •  
    United States

Posted 14 April 2014 - 05:33 PM

Yeah, I admit that I didn't do much extensive searching, I was hoping more than anything to get in touch with some of the gurus in the various fields mentioned.

 

But wow, thanks a ton! So it looks like SFC is perhaps the only tool that some kind of duplicate hasn't already been done, but I'll look into the details available already :D

 

Yeah, I'd expected registry support to already be somewhat available, and with typical Linux standards, mounting it as a filesystem would definitely be more acceptable. Although, it would make cross-compatibility with Windows a bit strange.

 

I had never seen that DriverInjection GUI application before, definitely gonna chat up the author, although are the methods extremely different for application of drivers other than mass storage or for Windows Vista+ systems? For me, I'm guessing that offline updating of drivers could have some nice benefits, although it may come with some negative unexpected consequences, this is a great start though :D

 

I'll try and get in touch with JFX, his tool truly impresses me :)

 

Thanks a ton Wonko, yours answers are always extremely helpful, even though I'm constantly asking vague questions. I'm currently in the middle of a large project, my hope is to package these tools to make it more user-friendly, making some of these awesome modifications more readily-accessible.

 

Thanks again! If anyone else has any more details, I'm definitely open to any other info.



#4 Wonko the Sane

Wonko the Sane

    The Finder

  • Advanced user
  • 16066 posts
  • Location:The Outside of the Asylum (gate is closed)
  •  
    Italy

Posted 14 April 2014 - 06:11 PM

Just for the record, JFX's very nice WINNTSETUP is an evolution of an originally very simple approach:

http://reboot.pro/to...external-drive/

 

:duff:

Wonko



#5 sbaeder

sbaeder

    Gold Member

  • .script developer
  • 1338 posts
  • Location:usa - massachusettes
  •  
    United States

Posted 16 April 2014 - 05:24 PM

Add/Remove Programs

If anyone knows how to get access to the Add/Remove Programs list, I'd like to know the details. While I'll probably not attempt to create an offline manual uninstaller system, I think being able to see the installed programs of an offline system could be very helpful. Also, does Windows list anti-virus products separately for its "AntiVirus not installed" dialog?

 

these are just in the registry, so if you get the access to the registry working, adding this would be easy...

 

look in HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall ...Each subkey is all the info on that program



#6 RoyM

RoyM

    Frequent Member

  • .script developer
  • 420 posts
  • Interests:"Booting and Owning".
  •  
    United States

Posted 17 April 2014 - 02:19 AM

You might want to see the link below for some ideas if you don't want to re-reverse engineering the wheel.
I was an early Beta tester of TechUSB and they had a nice product, that was a few years ago though.
it has changed much since then.
 
TechUSB version 2.0 is a full-fledged Computer Repair Operating System. 
Based on Debian-Knoppix instead of Debian Stable,
 
 
 

Regards RoyM



#7 Falkoner

Falkoner

    Newbie

  • Members
  • 16 posts
  •  
    United States

Posted 09 August 2014 - 02:34 PM

Sorry to necro the topic a bit, life got busy for a while.

 

I actually am intending to create a open source implementation of a lot of what TechUSB implemented, I was also a Beta tester, and their pricing scheme left me very disappointed. My plan is to create it as a software solution, and rely on the nice hardware friendy distros such as Parted Magic or System Rescue CD for hardware support.

 

I also would like to implement it in Windows as well, which is often more convenient than Linux.


Edited by Falkoner, 09 August 2014 - 02:36 PM.






Also tagged with one or more of these keywords: sfc, chkdsk, fsck, ntfs, install, drivers, registry

1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users