|
Post by enderboy on Sept 4, 2024 11:34:58 GMT -8
What happened to the person who made this mod?
|
|
|
Post by The Jackal on Sept 4, 2024 14:24:17 GMT -8
What happened to the person who made this mod? They deleted their account, for whatever reasons they felt like they wanted to.
|
|
technicalissues
Sophomore Member
Windows 10 that is 1:1 to 7; coming soon
Posts: 157
OS: Windows 10 22H2
Theme: Windows 7 Visuals and functions
CPU: Intel i5-13400F
RAM: 16GB DDR5
GPU: NVIDIA RTX 4060
|
Post by technicalissues on Sept 5, 2024 1:25:22 GMT -8
What to do if explorer and windows abandoned me (entire windows folder gone) Reinstall Windows or restore the missing files What do I do if my computer ran away with my shoes and ended up in south africa and burned and no computers are left in the world (my shoes are now missing and my computer got blown away with them)
|
|
shanarblox
New Member
one user who converts win 10 to vista
Posts: 3
|
Post by shanarblox on Sept 10, 2024 17:24:49 GMT -8
this mod is broken and not work agreed
|
|
shanarblox
New Member
one user who converts win 10 to vista
Posts: 3
|
Post by shanarblox on Sept 10, 2024 17:28:32 GMT -8
I've made a mod for Windhawk which will restore physical memory (if your dialog is set up right, SEE THE README) and make the license link open Notepad instead of the custom dialog. Again, SEE THE README. Before: After: Mod code // ==WindhawkMod== // @id classic-winver // @name Classic Winver // @description Show physical memory in Winver // @version 1.0.0 // @author aubymori // @github https://github.com/aubymori // @include * // ==/WindhawkMod==
// ==WindhawkModReadme== /* # Classic Winver Show the physical memory in Winver, like Vista and before, and optionally make the license link open `C:\Windows\System32\eula.txt` in Notepad instead of the default `C:\Windows\System32\license.rtf` in the custom popup.
# IMPORTANT - For the Physical memory available to Windows string to work properly, the control for it *MUST* have an ID of 13571. - For the License link to work, you *MUST* have `eula.txt` in `C:\Windows\System32` and `C:\Windows\SysWOW64`. */ // ==/WindhawkModReadme==
// ==WindhawkModSettings== /* - physmem: true $name: Physical memory available to Windows $description: Show the physical memory, like Windows Vista and before - notepadeula: true $name: Old EULA behavior $description: Open C:\Windows\System32\eula.txt instead of C:\Windows\System32\license.rtf in a popup - memformat: "%s KB" $name: Memory string format $description: String format to use for Physical memory available to Windows. */ // ==/WindhawkModSettings==
#include <windhawk_api.h> #include <windhawk_utils.h>
struct { bool physmem; bool notepadeula; wchar_t *memformat; } settings;
#define IDD_CONVENTIONAL 13571 #define IDD_EULA 13586
#define BytesToK(pDW) (*(pDW) = (*(pDW) + 512) / 1024)
#define MAX_INT64_SIZE 30 #define MAX_COMMA_NUMBER_SIZE (MAX_INT64_SIZE + 10)
/************************************************************************** // Converts 64 bit Int to Str **************************************************************************/ void Int64ToStr( __int64 n, LPWSTR lpBuffer) { WCHAR szTemp[MAX_INT64_SIZE]; __int64 iChr;
iChr = 0;
do { szTemp[iChr++] = L'0' + (WCHAR)(n % 10); n = n / 10; } while (n != 0);
do { iChr--; *lpBuffer++ = szTemp[iChr]; } while (iChr != 0);
*lpBuffer++ = '\0'; }
// // Obtain NLS info about how numbers should be grouped. // // The annoying thing is that LOCALE_SGROUPING and NUMBERFORMAT // have different ways of specifying number grouping. // // LOCALE NUMBERFMT Sample Country // // 3;0 3 1,234,567 United States // 3;2;0 32 12,34,567 India // 3 30 1234,567 ?? // // Not my idea. That's the way it works. // // Bonus treat - Win9x doesn't support complex number formats, // so we return only the first number. // UINT GetNLSGrouping(void) { UINT grouping; LPWSTR psz; WCHAR szGrouping[32];
// If no locale info, then assume Western style thousands if (!GetLocaleInfoW(LOCALE_USER_DEFAULT, LOCALE_SGROUPING, szGrouping, ARRAYSIZE(szGrouping))) return 3;
grouping = 0; psz = szGrouping; for (;;) { if (*psz == L'0') break; // zero - stop
else if ((UINT)(*psz - L'0') < 10) // digit - accumulate it grouping = grouping * 10 + (UINT)(*psz - L'0');
else if (*psz) // punctuation - ignore it { }
else // end of string, no "0" found { grouping = grouping * 10; // put zero on end (see examples) break; // and finished }
psz++; } return grouping; }
// takes a DWORD add commas etc to it and puts the result in the buffer STDAPI_(LPWSTR) AddCommas64(LONGLONG n, LPWSTR pszResult, UINT cchResult) { WCHAR szTemp[MAX_COMMA_NUMBER_SIZE]; WCHAR szSep[5]; NUMBERFMT nfmt;
nfmt.NumDigits=0; nfmt.LeadingZero=0; nfmt.Grouping = GetNLSGrouping(); GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_STHOUSAND, szSep, ARRAYSIZE(szSep)); nfmt.lpDecimalSep = nfmt.lpThousandSep = szSep; nfmt.NegativeOrder= 0;
Int64ToStr(n, szTemp);
if (GetNumberFormat(LOCALE_USER_DEFAULT, 0, szTemp, &nfmt, pszResult, cchResult) == 0) { wcscpy_s(pszResult, cchResult, szTemp); // ok to truncate, for display only }
return pszResult; }
typedef INT_PTR (CALLBACK *AboutDlgProc_t)(HWND, UINT, WPARAM, LPARAM); AboutDlgProc_t AboutDlgProc_orig; INT_PTR CALLBACK AboutDlgProc_hook( HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) { switch (uMsg) { /* Display memory information */ case WM_INITDIALOG: if (settings.physmem) { MEMORYSTATUSEX MemoryStatus; DWORDLONG ullTotalPhys;
MemoryStatus.dwLength = sizeof(MEMORYSTATUSEX); GlobalMemoryStatusEx(&MemoryStatus); ullTotalPhys = MemoryStatus.ullTotalPhys;
BytesToK(&ullTotalPhys);
WCHAR szBuffer[64]; WCHAR szNumBuf1[32];
wsprintf(szBuffer, settings.memformat, AddCommas64(ullTotalPhys, szNumBuf1, ARRAYSIZE(szNumBuf1))); SetDlgItemTextW(hWnd, IDD_CONVENTIONAL, szBuffer); } /* Open EULA in notepad */ case WM_NOTIFY: if (settings.notepadeula && (IDD_EULA == (int)wParam) && (NM_CLICK == ((LPNMHDR)lParam)->code)) { SHELLEXECUTEINFOW sei = { 0 }; sei.cbSize = sizeof(SHELLEXECUTEINFOW); sei.fMask = SEE_MASK_DOENVSUBST; sei.hwnd = hWnd; sei.nShow = SW_SHOWNORMAL; sei.lpFile = L"%windir%\\system32\\eula.txt";
ShellExecuteExW(&sei); break; } default: return AboutDlgProc_orig( hWnd, uMsg, wParam, lParam ); }
return TRUE; }
void LoadSettings(void) { settings.physmem = Wh_GetIntSetting(L"physmem"); settings.notepadeula = Wh_GetIntSetting(L"notepadeula"); settings.memformat = (wchar_t *)Wh_GetStringSetting(L"memformat"); }
BOOL Wh_ModInit(void) { LoadSettings();
HMODULE hShell32 = LoadLibraryW(L"shell32.dll"); if (!hShell32) { Wh_Log(L"Failed to load shell32.dll"); return FALSE; }
WindhawkUtils::SYMBOL_HOOK hook = { { #ifdef _WIN64 L"__int64 __cdecl AboutDlgProc(struct HWND__ *,unsigned int,unsigned __int64,__int64)" #else L"int __stdcall AboutDlgProc(struct HWND__ *,unsigned int,unsigned int,long)" #endif }, (void **)&AboutDlgProc_orig, (void *)AboutDlgProc_hook, false };
if (!WindhawkUtils::HookSymbols( hShell32, &hook, 1 )) { Wh_Log(L"Failed to hook AboutDlgProc"); return FALSE; }
return TRUE; }
void Wh_ModSettingsChanged(void) { LoadSettings(); }
broken, but let me try
|
|
|
Post by enderboy on Sept 14, 2024 10:16:27 GMT -8
There was no point in this thread, this is pure discord drama, this dwmblurglass was never released publicly, tell me what the point of this was
|
|
|
Post by OrthodoxWin32 on Sept 14, 2024 10:34:26 GMT -8
There was no point in this thread, this is pure discord drama, this dwmblurglass was never released publicly, tell me what the point of this was At the time, it was important because no one knew if Alcatel still wanted revenge on part of the community. Even if I think that Brawllux could have discussed the situation in a less frightening way.
But I totally agree with you that this thread has become not only useless, but also counterproductive; indeed, for a very long time, users have been alarmed by the fact that most antiviruses detect certain Windows customization tools; it is therefore necessary to be educational and explain why these detections are false. The problem is that this thread causes confusion on this subject; particularly because BasicThemer5 (compiled by Alcatel) is one of the tools abusively detected. And since the first post of this pinned thread advises to stay away from anything that Alcatel has touched, this gives credence to this false detection... In addition, it is known that anything that is current code and does not contain malicious code cannot be discreetly updated; the danger is therefore non-existent, contrary to what this thread insinuates.
|
|
|
Post by enderboy on Sept 14, 2024 10:39:00 GMT -8
There was no point in this thread, this is pure discord drama, this dwmblurglass was never released publicly, tell me what the point of this was At the time, it was important because no one knew if Alcatel still wanted revenge on part of the community. Even if I think that Brawllux could have discussed the situation in a less frightening way.
But I totally agree with you that this thread has become not only useless, but also counterproductive; indeed, for a very long time, users have been alarmed by the fact that most antiviruses detect certain Windows customization tools; it is therefore necessary to be educational and explain why these detections are false. The problem is that this thread causes confusion on this subject; particularly because BasicThemer5 (compiled by Alcatel) is one of the tools abusively detected. And since the first post of this pinned thread advises to stay away from anything that Alcatel has touched, this gives credence to this false detection... In addition, it is known that anything that is current code and does not contain malicious code cannot be discreetly updated; the danger is therefore non-existent, contrary to what this thread insinuates. Yes, I want this thread locked, but I’m no mod, so it’s up to the admins and mods
|
|
|
Post by The Jackal on Sept 14, 2024 12:40:51 GMT -8
There was no point in this thread, this is pure discord drama, this dwmblurglass was never released publicly, tell me what the point of this was To warn people to beware using Alcatel 's programs after Alcatel had just released malware and infected people's systems. The concern was real, and to put the thread down as "pure Discord drama" is absurd. The situation's continued discussion, yes, that devolved into pointless bickering and fear mongering, so yeah I think locking that thread is a good idea.
|
|
neptune
Freshman Member
👅
Posts: 33
OS: 👅
Theme: 👅
CPU: 👅
RAM: 👅
GPU: 👅
Computer Make/Model: 👅
|
Post by neptune on Sept 17, 2024 9:52:38 GMT -8
(in smosh voice) SHUT UUUUUUUUUP!!!!!!!!!
|
|
vruh2
Freshman Member
Posts: 43
|
Post by vruh2 on Sept 17, 2024 9:54:23 GMT -8
smartschoolboy9
|
|
neptune
Freshman Member
👅
Posts: 33
OS: 👅
Theme: 👅
CPU: 👅
RAM: 👅
GPU: 👅
Computer Make/Model: 👅
|
Post by neptune on Sept 17, 2024 9:55:21 GMT -8
|
|
Olivia
New Member
Posts: 13
OS: Windows 10 IoT enterprise LTSC 2021
Theme: Windows 7 Aero
CPU: Intel Core i5-8350
RAM: 24gb DDR4
Computer Make/Model: Lenovo ThinkPad T480
|
Post by Olivia on Sept 17, 2024 9:57:10 GMT -8
|
|
ImSwordQueen
New Member
Posts: 8
OS: Windows 10 LTSC 2021 x64
Theme: Windows 21H2to7 Transformation Pack
CPU: Ryzen 5 5600x
RAM: 32GB DDR4 3200 Mhz
GPU: NVIDIA RTX 3060ti
|
Post by ImSwordQueen on Sept 17, 2024 9:59:11 GMT -8
|
|
vruh2
Freshman Member
Posts: 43
|
Post by vruh2 on Sept 17, 2024 10:01:13 GMT -8
|
|
|
Post by The Jackal on Sept 17, 2024 11:59:11 GMT -8
|
|
kirta
Freshman Member
Posts: 59
OS: Windows 10 LTSC 2021
|
Post by kirta on Sept 17, 2024 14:25:46 GMT -8
Bot accounts can refresh attachment URLs, so I wrote a userscript to automatically replace links and images {Spoiler} // ==UserScript== // @name Automatic External Discord Attachment Refresher // @namespace c7.pm // @match *://*/* // @version 1.0.0 // @author Cynosphere // @description 2/23/2024, 1:30:22 PM // @run-at document-body // @grant GM.xmlHttpRequest // @connect discord.com // ==/UserScript==
(()=>{ const headers = { "User-Agent": "DiscordBot (https://c7.pm, 1.0.0) AttachmentRefresherUserscript", "Authorization": "Bot TOKENHERE", "Content-Type": "application/json", };
const selectors = [ `a[href*="cdn.discordapp.com/attachments/"]:not([href*="?ex="])`, `img[src*="cdn.discordapp.com/attachments/"]:not([src*="?ex="])`, `a[href*="media.discordapp.net/attachments/"]:not([href*="?ex="])`, `img[src*="media.discordapp.net/attachments/"]:not([src*="?ex="])`, ];
let timer;
function debounce(cb, delay = 500) { if (timer) clearTimeout(timer); timer = setTimeout(cb, delay) }
const pending = new Map();
function xhr(props) { return new Promise((resolve, reject) => { GM.xmlHttpRequest(Object.assign({}, props, { onload(res) { resolve(res); }, onabort() { reject(new DOMException("Aborted", "AbortError")); }, ontimeout() { reject(new TypeError("Network request failed, timeout")); }, onerror(err) { reject(new TypeError("Failed to fetch: " + err.finalUrl)); }, })); }) }
async function refresh() { const urls = []; for (const url of pending.keys()) { urls.push(url); }
const data = await xhr({ url: "https://discord.com/api/v10/attachments/refresh-urls", method: "POST", headers, data: JSON.stringify({attachment_urls: urls}), responseType: "json" }).then(res=>JSON.parse(res.responseText));
for (const {original, refreshed} of data.refreshed_urls) { const elem = pending.get(original); if (elem.tagName === "A") { elem.href = refreshed; } else if (elem.tagName === "IMG") { elem.src = refreshed; }
pending.delete(original); }
console.log(`Refreshed ${urls.length} attachments.`); }
function mutate(elem) { let url = elem.href ?? elem.src; if (!url) return;
if (!pending.has(url)) { pending.set(url, elem); debounce(refresh); } }
if (!location.hostname.endsWith("discord.com")) { new MutationObserver((records) => { const changedElems = new Set();
for (const record of records) { changedElems.add(record.target);
for (const elem of record.removedNodes) if (elem instanceof HTMLElement || elem instanceof SVGElement) changedElems.add(elem); }
for (const elem of changedElems) { if (!elem) { changedElems.remove(elem); continue; } for (const selector of selectors) { if (elem?.matches?.(selector)) mutate(elem); elem ?.querySelectorAll?.(selector) ?.forEach?.((e) => (e instanceof HTMLElement || e instanceof SVGElement) && mutate(e)); } } }).observe(document.body, { childList: true, characterData: true, subtree: true }); } })();
Dead
|
|
|
Post by timebox on Sept 18, 2024 19:45:55 GMT -8
thanks
|
|
|
Post by enzoclassic on Sept 21, 2024 12:43:56 GMT -8
Where are the download files?
|
|
|
Post by Windows User on Sept 21, 2024 12:58:10 GMT -8
Where are the download files? Bro why did you revive this old thread, look at the rule number 13
|
|