devel-windows.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Wed, 30 Jun 2010 14:38:21 +0300
changeset 426 24ede02309c6
parent 343 64bf32279008
child 435 9e0e5abccbe2
permissions -rw-r--r--
About Cabinet file.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
155
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     1
-*- mode: outline -*-
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     2
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     3
* Dependency Walker.
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     4
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     5
Dependency Walker is a free utility that scans any 32-bit or 64-bit Windows
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     6
module (exe, dll, ocx, sys, etc.) and builds a hierarchical tree diagram of
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     7
all dependent modules. For each module found, it lists all the functions that
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     8
are exported by that module, and which of those functions are actually being
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
     9
called by other modules. Another view displays the minimum set of required
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    10
files, along with detailed information about each file including a full path
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    11
to the file, base address, version numbers, machine type, debug information,
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    12
and more.
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    13
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    14
See
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    15
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    16
  http://www.dependencywalker.com/
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    17
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    18
* Sysinternals.
e475cd4f789a Merged with conversion from CR/LF to LF.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 143
diff changeset
    19
189
a433d6009641 Move info from windows-devel.txt to process-managment.txt and stat.txt.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 155
diff changeset
    20
TODO
288
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    21
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    22
* Running at startup.
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    23
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    24
  HKCU\Software\Microsoft\Windows\CurrentVersion\Run
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    25
                Launches a program automatically when a particular user logs
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    26
                in. This key is used when you always want to launch a program
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    27
                when a particular user is using a system.
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    28
  HKCU\Software\Microsoft\Windows\CurrentVersion\RunOnce
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    29
                Launches a program the next time the user logs in and removes
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    30
                its value entry from the registry. This key is typically used
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    31
                by installation programs.
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    32
  HKLM\Software\Microsoft\Windows\CurrentVersion\Run
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    33
                Launches a program automatically at system startup. This key
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    34
                is used when you always want to launch a program on a
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    35
                particular system.
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    36
  HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    37
                Launches a program the next time the system starts and removes
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    38
                its value entry from the registry. This key is typically used
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    39
                by installation programs.
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    40
  HKLM\Software\Microsoft\Windows\CurrentVersion\RunServices
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    41
                Launches a service (a standard NT service or a background
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    42
                process) automatically at startup. An example of a service is
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    43
                a Web server such as Microsoft Internet Information Server.
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    44
  HKLM\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    45
                Launches a service (a standard NT service or a background
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    46
                process) the next time the system is started, then removes its
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    47
                value entry from the registry.
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    48
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    49
Values to registry on Windows XP can be added by:
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    50
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    51
  cmd> reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" /v run.bat /t REG_SZ /d "path\to\run.bat"
c34bdce72894 Running at startup.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 189
diff changeset
    52
  cmd> reg query HKCU\Software\Microsoft\Windows\CurrentVersion\Run   <-- see what done
338
e70d9e6f07f6 Can I link to MFC statically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288
diff changeset
    53
e70d9e6f07f6 Can I link to MFC statically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288
diff changeset
    54
* MFC.
e70d9e6f07f6 Can I link to MFC statically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288
diff changeset
    55
e70d9e6f07f6 Can I link to MFC statically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288
diff changeset
    56
** Can I link to MFC statically.
e70d9e6f07f6 Can I link to MFC statically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288
diff changeset
    57
e70d9e6f07f6 Can I link to MFC statically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288
diff changeset
    58
Yes.
e70d9e6f07f6 Can I link to MFC statically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288
diff changeset
    59
e70d9e6f07f6 Can I link to MFC statically.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 288
diff changeset
    60
  http://msdn.microsoft.com/en-us/library/f22wcbea%28VS.80%29.aspx
343
64bf32279008 Microsoft Visual C++ Redistributable Package.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
    61
64bf32279008 Microsoft Visual C++ Redistributable Package.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
    62
* Microsoft Visual C++ Redistributable Package.
64bf32279008 Microsoft Visual C++ Redistributable Package.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
    63
64bf32279008 Microsoft Visual C++ Redistributable Package.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
    64
  http://www.microsoft.com/downloads/en/confirmation.aspx?familyId=32bc1bee-a3f9-4c13-9c99-220b62a191ee&displayLang=en
64bf32279008 Microsoft Visual C++ Redistributable Package.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
    65
                This package installs runtime components of C Runtime (CRT),
64bf32279008 Microsoft Visual C++ Redistributable Package.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 338
diff changeset
    66
                Standard C++, ATL, MFC, OpenMP and MSDIA libraries.
426
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    67
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    68
* Cabinet file (.cab).
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    69
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    70
  http://support.microsoft.com/kb/198038
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    71
                INFO: Useful Tools for Package and Deployment Issues
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    72
  http://msdn.microsoft.com/en-us/library/aa367841%28VS.85%29.aspx
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    73
                The Makecab.exe utility is included in the Windows SDK
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    74
                Components for Windows Installer Developers.
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    75
  http://web.archive.org/web/20070403215326/http://download.microsoft.com/download/platformsdk/cab/2.0/w98nt42kmexp/en-us/cabsdk.exe
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    76
                download link from web archive
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    77
  http://msdn.microsoft.com/en-us/library/aa370834%28v=VS.85%29.aspx
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    78
                The components of the Windows Installer Software Development
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    79
                Kit are included in the Microsoft Windows Software Development
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    80
                Kit (SDK).
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    81
  http://msdn.microsoft.com/en-us/library/bb417343.aspx
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    82
                Microsoft Cabinet Format
24ede02309c6 About Cabinet file.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 343
diff changeset
    83