Type a page name and press Enter. You'll jump to the page if it exists, or you can create it if it doesn't.
To create a page in a module other than shell32, prefix the name with the module name and a period.
Declare Function SHGetSetSettings Lib "shell32.dll" (TODO) As TODO
User-Defined Types:
[StructLayout(LayoutKind.Sequential)]
public struct SHELLSTATE {
public uint flags_1;
public uint dwWin95Unused;
public uint uWin95Unused;
public int lParamSort;
public int iSortDirection;
public uint version;
public uint uNotUsed;
public uint flags_2;
public bool fShowAllObjects {
get {return (flags_1 & 0x00000001u) == 0x00000001u;}
set {if (value) {flags_1 |= 0x00000001u;} else {flags_1 &= ~0x00000001u;}}
}
public bool fShowExtensions {
get {return (flags_1 & 0x00000002u) == 0x00000002u;}
set {if (value) {flags_1 |= 0x00000002u;} else {flags_1 &= ~0x00000002u;}}
}
public bool fNoConfirmRecycle {
get {return (flags_1 & 0x00000004u) == 0x00000004u;}
set {if (value) {flags_1 |= 0x00000004u;} else {flags_1 &= ~0x00000004u;}}
}
public bool fShowSysFiles {
get {return (flags_1 & 0x00000008u) == 0x00000008u;}
set {if (value) {flags_1 |= 0x00000008u;} else {flags_1 &= ~0x00000008u;}}
}
public bool fShowCompColor {
get {return (flags_1 & 0x00000010u) == 0x00000010u;}
set {if (value) {flags_1 |= 0x00000010u;} else {flags_1 &= ~0x00000010u;}}
}
public bool fDoubleClickInWebView {
get {return (flags_1 & 0x00000020u) == 0x00000020u;}
set {if (value) {flags_1 |= 0x00000020u;} else {flags_1 &= ~0x00000020u;}}
}
public bool fDesktopHTML {
get {return (flags_1 & 0x00000040u) == 0x00000040u;}
set {if (value) {flags_1 |= 0x00000040u;} else {flags_1 &= ~0x00000040u;}}
}
public bool fWin95Classic {
get {return (flags_1 & 0x00000080u) == 0x00000080u;}
set {if (value) {flags_1 |= 0x00000080u;} else {flags_1 &= ~0x00000080u;}}
}
public bool fDontPrettyPath {
get {return (flags_1 & 0x00000100u) == 0x00000100u;}
set {if (value) {flags_1 |= 0x00000100u;} else {flags_1 &= ~0x00000100u;}}
}
public bool fShowAttribCol {
get {return (flags_1 & 0x00000200u) == 0x00000200u;}
set {if (value) {flags_1 |= 0x00000200u;} else {flags_1 &= ~0x00000200u;}}
}
public bool fMapNetDrvBtn {
get {return (flags_1 & 0x00000400u) == 0x00000400u;}
set {if (value) {flags_1 |= 0x00000400u;} else {flags_1 &= ~0x00000400u;}}
}
public bool fShowInfoTip {
get {return (flags_1 & 0x00000800u) == 0x00000800u;}
set {if (value) {flags_1 |= 0x00000800u;} else {flags_1 &= ~0x00000800u;}}
}
public bool fHideIcons {
get {return (flags_1 & 0x00001000u) == 0x00001000u;}
set {if (value) {flags_1 |= 0x00001000u;} else {flags_1 &= ~0x00001000u;}}
}
public bool fWebView {
get {return (flags_1 & 0x00002000u) == 0x00002000u;}
set {if (value) {flags_1 |= 0x00002000u;} else {flags_1 &= ~0x00002000u;}}
}
public bool fFilter {
get {return (flags_1 & 0x00004000u) == 0x00004000u;}
set {if (value) {flags_1 |= 0x00004000u;} else {flags_1 &= ~0x00004000u;}}
}
public bool fShowSuperHidden {
get {return (flags_1 & 0x00008000u) == 0x00008000u;}
set {if (value) {flags_1 |= 0x00008000u;} else {flags_1 &= ~0x00008000u;}}
}
public bool fNoNetCrawling {
get {return (flags_1 & 0x00010000u) == 0x00010000u;}
set {if (value) {flags_1 |= 0x00010000u;} else {flags_1 &= ~0x00010000u;}}
}
public bool fSepProcess {
get {return (flags_2 & 0x00000001u) == 0x00000001u;}
set {if (value) {flags_2 |= 0x00000001u;} else {flags_2 &= ~0x00000001u;}}
}
public bool fStartPanelOn {
get {return (flags_2 & 0x00000002u) == 0x00000002u;}
set {if (value) {flags_2 |= 0x00000002u;} else {flags_2 &= ~0x00000002u;}}
}
public bool fShowStartPage {
get {return (flags_2 & 0x00000004u) == 0x00000004u;}
set {if (value) {flags_2 |= 0x00000004u;} else {flags_2 &= ~0x00000004u;}}
}
public bool fAutoCheckSelect {
get {return (flags_2 & 0x00000008u) == 0x00000008u;}
set {if (value) {flags_2 |= 0x00000008u;} else {flags_2 &= ~0x00000008u;}}
}
public bool fIconsOnly {
get {return (flags_2 & 0x00000010u) == 0x00000010u;}
set {if (value) {flags_2 |= 0x00000010u;} else {flags_2 &= ~0x00000010u;}}
}
public bool fShowTypeOverlay {
get {return (flags_2 & 0x00000020u) == 0x00000020u;}
set {if (value) {flags_2 |= 0x00000020u;} else {flags_2 &= ~0x00000020u;}}
}
public bool fShowStatusBar {
get {return (flags_2 & 0x00000040u) == 0x00000040u;}
set {if (value) {flags_2 |= 0x00000040u;} else {flags_2 &= ~0x00000040u;}}
}
}
SHELLSTATE state = new SHELLSTATE();
SHGetSetSettings(ref state, SSF.SSF_DOUBLECLICKINWEBVIEW, false); // get the current fDoubleClickInWebView flag
state.fDoubleClickInWebView = !state.fDoubleClickInWebView; // toggle the fDoubleClickInWebView flag
SHGetSetSettings(ref state, SSF.SSF_DOUBLECLICKINWEBVIEW, true); // set the new flag
Please edit this page!
Do you have...
helpful tips or sample code to share for using this API in managed code?
corrections to the existing content?
variations of the signature you want to share?
additional languages you want to include?
Select "Edit This Page" on the right hand toolbar and edit it! Or add new pages containing supporting types needed for this API (structures, delegates, and more).