Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 10/10/2023 in Posts

  1. In terms of opening sites - yes, take mediamarkt, for example. In terms of portability (which this topic is about) - no. Kaffan MiniBrowser is simply not portable, like Supermium, so both are off-topic.
    4 points
  2. I guess kiss the unGoogled Supermium idea goodbye. From what we can see by the comments/issues/suggestions at the github's page, many would like to have it Googled - to be able to use Google services. Hence the newly added Google sync or whatever they call it.
    4 points
  3. @tekkaman This thread is exclusively about security programmes for Windows XP . Therefore, your observation or problem is unfortunately off-topic. You should post it in the Windows 7 forum. BTW, I had no problem to install Panda Antivirus Free in the version 22.00.01 under Windows XP. And the installer didn't want me to install .NET Framework 4 either, presumably because my Windows XP was and is fully updated. Cheers, AstroSkipper
    4 points
  4. Can you imagine Google sync in unGoogled chrome? So looks like Supermium's author had finally chose the "default/vanilla" road.
    3 points
  5. Version 109 is almost a year old. There already are troubles with it, like in the case with the British milk site, I too had troubles with it and 110 is barely hanging on.
    3 points
  6. @Wunderbar98, Sorry I'm very late with this comment, but as to the thread renaming, perhaps renaming the thread something like "Running Windows 98 in 2020 and beyond, without anything not officially released by MS specifically intended for Win98" would satisfy your requirement to distinguish this thread from others, yet remove the "offending" term "Vanilla". As thread creator, I assume you can do this. I hope you are well, my friend. Cheers and Regards
    3 points
  7. Glad to be of help! I think I found even better! Dell Quadro Driver 348.17 for Windows 7 (32-bit) and Windows 8.1 (32-bit). https://www.dell.com/support/home/en-uk/drivers/driversdetails?driverid=k82g1
    3 points
  8. It's the other way around, Edge and IE are iconic browsers that use "favourites", all other are just third party apps. 360 Chrome also uses favourites and used, before you changed it.
    2 points
  9. Why not simply call it Windows 98 RTM then, to satisfy everyone?
    2 points
  10. WOW! Thanks a whole lot, I'll test tomorrow. Seems like the best alternative.
    2 points
  11. Wouldn't exactly classify as "Software for Windows 8.1" more like "Modded Software for Windows 8.1". The fonts look smudged, is it the usaul case with 8/8.1, the same ugly/blurry fonts, like in Windows 7?
    1 point
  12. Good point, but it then will involve adding missing stub DLLs. no? I didn't try myself on Win 8, but I kind of gussed it will not be finished with just replacing virtualalloc.
    1 point
  13. I know that. I just wanted to know if the problem was present in XP as well. Which is what I clearly asked and NotHereToPlayGames confirmed it works.
    1 point
  14. I was able to install on XP three weeks ago or so. I recall aborting the install when it started to download/install .net. I dislike automated installs so literally forced a power-off to prevent it, then installed .net manually with an offline installer. Panda installed fine after I manually installed .net.
    1 point
  15. emoji test -- Okay, this polyfill works for your milk delivery thumbnails without breaking emojis at MSFN - which could be why I already had this in my arsenal as an "all-in-one" polyfill. // ==UserScript== // @name Inject Change Array by Copy All-in-One Polyfill [110] // @version 0.0.1 // @match *://*/* // @run-at document-start // @grant none // ==/UserScript== ((arrayPrototype, typedArrayPrototype) => { "use strict"; const typedArrayLength = Function.call.bind( Object.getOwnPropertyDescriptor(typedArrayPrototype, "length").get ); function toIntegerOrInfinity(arg) { let n = Number(arg); if (Number.isNaN(n) || n === 0) { return 0; } if (n === Number.POSITIVE_INFINITY) { return Number.POSITIVE_INFINITY; } if (n === Number.NEGATIVE_INFINITY) { return Number.NEGATIVE_INFINITY; } let i = Math.floor(Math.abs(n)); if (n < 0) { i = -i; } return i; } function toObject(val) { if (val === null || val === undefined) { throw new TypeError(`${val} is not an object`); } return Object(val); } function lengthOfArrayLike(arr) { if (!(typeof arr === "object" && arr !== null)) { throw new TypeError(); } let len = toIntegerOrInfinity(arr["length"]); if (!Number.isFinite(len)) { len = 0; } return Math.max(0, Math.min(len, Number.MAX_SAFE_INTEGER)); } /** @typedef {Int8Array|Uint8Array|Uint8ClampedArray|Int16Array|Uint16Array|Int32Array|Uint32Array|Float32Array|Float64Array|BigInt64Array|BigUint64Array} TypedArray */ /** * @param {unknown} v * @returns {TypedArray} */ function assertTypedArray(v) { typedArrayPrototype.keys.call(v); // @ts-expect-error return v; } /** * @param {TypedArray} arr * @returns {TypedArray[typeof Symbol.toStringTag]} */ function typedArrayNameInternalSlot(arr) { return Object.getOwnPropertyDescriptor(typedArrayPrototype, Symbol.toStringTag) .get.call(arr); } /** * @param {TypedArray} example * @param {number} length * @returns {TypedArray} */ function typedArrayCreate(example, length) { assertTypedArray(example); const arrayName = typedArrayNameInternalSlot(example); switch (arrayName) { case 'Int8Array': return new Int8Array(length); case 'Uint8Array': return new Uint8Array(length); case 'Uint8ClampedArray': return new Uint8ClampedArray(length); case 'Int16Array': return new Int16Array(length); case 'Uint16Array': return new Uint16Array(length); case 'Int32Array': return new Int32Array(length); case 'Uint32Array': return new Uint32Array(length); case 'Float32Array': return new Float32Array(length); case 'Float64Array': return new Float64Array(length); case 'BigInt64Array': return new BigInt64Array(length); case 'BigUint64Array': return new BigUint64Array(length); default: /** @type {never} */ const n = arrayName; throw new Error(`Unexpected TypedArray name ${n}`); } } /** * @param {TypedArray} example * @returns {boolean} */ function isBigIntArray(example) { assertTypedArray(example); const arrayName = typedArrayNameInternalSlot(example); switch (arrayName) { case 'BigInt64Array': case 'BigUint64Array': return true; } return false; } function transfer({ count, src, srcStart, srcStep = 1, target, targetStart, targetStep = srcStep }) { let from = srcStart; let to = targetStart; for (let i = 0; i < count; i++) { target[to] = src[from]; from += srcStep; to += targetStep; } } /** * @param {TypedArray} example * @param {unknown} value * @description convert `value` to bigint or number based on the the type of array * @returns {bigint | number} * @throws if one of the override methods throws. e.g. `@@toPrimitive`, `valueOf`, `toString` */ function typedArrayNumberConversion(example, value) { let asNumber; { if (isBigIntArray(example)) { asNumber = 0n; } else { asNumber = -0; // important to use `-0` and not `0` } // @ts-ignore : using `+=` to emulate ToBigInt or ToNumber asNumber += value; } return asNumber; } defineArrayMethods({ toReversed() { const o = toObject(this); const len = lengthOfArrayLike(o); const a = new Array(len); transfer({ src: o, srcStart: len - 1, srcStep: -1, target: a, targetStart: 0, targetStep: 1, count: len }); return a; }, }); defineTypedArrayMethods({ toReversed() { const o = assertTypedArray(this); const len = typedArrayLength(o); const a = typedArrayCreate(o, len); transfer({ src: o, srcStart: len - 1, srcStep: -1, target: a, targetStart: 0, targetStep: 1, count: len }); return a; }, }); defineArrayMethods({ toSorted(compareFn) { if (compareFn !== void 0 && typeof compareFn !== "function") { throw new TypeError(); } const o = toObject(this); const len = lengthOfArrayLike(o); const a = new Array(len);; transfer({ src: o, srcStart: 0, target: a, targetStart: 0, count: len }); arrayPrototype.sort.call(a, compareFn); return a; }, }); defineTypedArrayMethods({ toSorted(compareFn) { if (compareFn !== void 0 && typeof compareFn !== "function") { throw new TypeError(); } const o = assertTypedArray(this); const len = typedArrayLength(o); const a = typedArrayCreate(o, len); transfer({ src: o, srcStart: 0, target: a, targetStart: 0, count: len }); typedArrayPrototype.sort.call(a, compareFn); return a; }, }); function calculateSplice({ start, len, deleteCount, values, argsCount }) { const relativeStart = toIntegerOrInfinity(start); let actualStart; if (relativeStart === -Infinity) { actualStart = 0; } else if (relativeStart < 0) { actualStart = Math.max(len + relativeStart, 0); } else { actualStart = Math.min(relativeStart, len); } const insertCount = values.length; let actualDeleteCount; if (/* start is not present */ argsCount === 0) { actualDeleteCount = 0; } else if (/* deleteCount is not present */ argsCount === 1) { actualDeleteCount = len - actualStart; } else { const dc = toIntegerOrInfinity(deleteCount); actualDeleteCount = Math.max(0, Math.min(dc, len - actualStart)); } const newLen = len + insertCount - actualDeleteCount; return { actualStart, newLen, actualDeleteCount }; } function doSplice({ src, target, actualStart, actualDeleteCount, values, newLen }) { let i = 0; while (i < actualStart) { target = src; i++; } for (const E of values) { target = E; i++; } let r = actualStart + actualDeleteCount; while (i < newLen) { let fromValue = src[r]; target = fromValue; i++; r++; } } defineArrayMethods({ toSpliced(start, deleteCount, ...values) { const o = toObject(this); const len = lengthOfArrayLike(o); const { actualStart, actualDeleteCount, newLen } = calculateSplice({ start, deleteCount, len, values, argsCount: arguments.length }); if (newLen > Number.MAX_SAFE_INTEGER) { throw new TypeError(); } const a = new Array(newLen); doSplice({ src: o, target: a, actualStart, actualDeleteCount, values, newLen }); return a; } }); defineArrayMethods({ with(index, value) { const o = toObject(this); const len = lengthOfArrayLike(o); const relativeIndex = toIntegerOrInfinity(index); const actualIndex = relativeIndex < 0 ? len + relativeIndex : relativeIndex; if (actualIndex < 0 || actualIndex >= len) { throw new RangeError(); } const a = new Array(len); for (let k = 0; k < len; k++) { const v = k === actualIndex ? value : o[k]; a[k] = v; } return a; } }); defineTypedArrayMethods({ with(index, value) { const o = assertTypedArray(this); const len = typedArrayLength(o); const relativeIndex = toIntegerOrInfinity(index); const actualIndex = relativeIndex < 0 ? len + relativeIndex : relativeIndex; const asNumber = typedArrayNumberConversion(o, value); if (actualIndex < 0 || actualIndex >= len) { throw new RangeError(); } const a = typedArrayCreate(o, len); for (let k = 0; k < len; k++) { const v = k === actualIndex ? asNumber : o[k]; a[k] = v; } return a; } }); /** @type {(def: { [N in "with" | "toReversed" | "toSorted" | "toSpliced"]?: typeof Array.prototype[N] }) => void} */ function defineArrayMethods(def) { defineMethods(arrayPrototype, def).forEach(name => { if (name !== 'with') { // 'with' is already a keyword arrayPrototype[Symbol.unscopables][name] = true; } }); } /** @type {(def: { [N in "with" | "toReversed" | "toSorted"]?: (this: TypedArray, ...args: Parameters<Uint8Array[N]>) => TypedArray }) => void} */ function defineTypedArrayMethods(def) { defineMethods(typedArrayPrototype, def); } function defineMethods(obj, def) { return Object.entries(def).map(([name, method]) => { Object.defineProperty(obj, name, { value: method, enumerable: false, configurable: true, writable: true, }); return name; }); } })(Array.prototype, Object.getPrototypeOf(Int8Array.prototype));
    1 point
  16. Interesting. I don't enable any of my polyfills by default. I only have them because of issue web sites posted here at MSFN - I've actually never encountered the need for any of them on my frequently visited web sites. If you find the need for any of them on your frequently visited web site(s), just edit the // @match *://*/* line to match your specific web site(s).
    1 point
  17. http://www.rw-designer.com/ Hello mina7601, For me the website above loads fine with the latest versions of St52,NM28 and K-Meleon. St52 and NM28 have Palefill 1.27 activated,no other extensions.
    1 point
  18. Thank you, applied. I wonder could it be added to the release, it would be fair since it had it originally, like in MS Edge.
    1 point
  19. Thanks for the reply bud, glad i'm not the only one who recognises it's brilliance & yes, it's very underated. I'm gonna install it on one of my much faster systems as i'm so impressed with it.
    1 point
  20. Hello @WSC4! Now, you might understand why I personally am not a fan of AVG. I also had to deal with BSODs. And that was already under Windows XP Professional SP3 32-bit. I never had such problems with any other Antivirus programme. And I tried a lot of different security programmes under Windows XP. Even Avast did not produce such BSODs. That's why I follow the rule: AVG, never again! Cheers, AstroSkipper
    1 point
  21. As promised, some further information about the topic Avira AntiVir Engine. I already mentioned that Avira has stopped supporting 32-bit systems for some time. Therefore, I reinstalled 360 Total Security Essential 8.8.0.1119 to see what is going on with its Avira AntiVir Engine today. After installing, I checked the date of the virus database. Without any updating, the virus database is from 28.07.2020. Here is a screenshot taken directly after installation without updating: When performing an update, the virus database of Avira was updated, too. The last version of the virus database, one can get, seems to be from 19.02.2021. Here is a screenshot after updating: More recent virus definitions, one apparently can't get anymore, presumably due to the lack of a more recent 32-Bit Avira AntiVir Engine. But at least, one can still update the virus database a bit, unlike Wise Anti Malware. And of course, it mustn't be forgotten that 360 Total Security Essential 8.8.0.1119 has four other antivirus engines. In any case, this little check is a further confirmation that the Avira AntiVir Engines are no longer supported on 32-Bit systems. Cheers, AstroSkipper
    1 point
  22. Preferred version of Windows Server is Server 2008, it's very fast on old and weak hardware, especially the one that runs off mechanical HDD disks.
    1 point
  23. I updated my post about 360 Total Security Essential 8.8.0.1119 to further specify the multiple antivirus engines (actually, there are five of them) used by this programme. One of them is the Avira AntiVir Engine which I will go into in a next post very soon. Cheers, AstroSkipper
    1 point
  24. Shadow Defender Shadow Defender is an easy-to-use PC/laptop security and privacy protection tool for Windows operating systems. It provides an excellent way to prevent unwanted or malicious changes from being made to your PC/laptop. With Shadow Defender, one can run the system in a virtual environment, called Shadow Mode. And all the attacks will happen in the virtual environment, not in the real environment. If attacks happened, all the user needs to do is to reboot the system. After reboot, the system will be restored to the original state, as if nothing happened. And meanwhile the user can save any selected files and folders to the real environment. Shadow Defender is of course XP-compatible, unfortunately commercial, and its installer is a 30 days trial. Features: Prevent all viruses and malware. Surf the internet safely and eliminate unwanted traces. Protect your privacy. Eliminate system downtime and maintenance costs. Reboot to restore your system back to its original state. Homepage: http://www.shadowdefender.com/index.html Version number: 1.5.0.726 Date of release: 02.08.2020 System requirements: Windows 11 Windows 10 Windows 8, 8.1 Windows 7 SP1 with KB3033929 installed Windows Vista SP2 with KB2763674 installed Windows 2003 Windows XP Version history: http://www.shadowdefender.com/history.html Reviews: https://outwittrade.com/shadow-defender-review/ https://malwaretips.com/threads/shadow-defender-an-unobjective-review.93266/ Download links: Installer: http://www.shadowdefender.com/download/Setup.exe Language files: http://www.shadowdefender.com/download.html Screenshots: Shadow Defender is really easy to use. It has been installed in my system since 2013. However, I only use it when changes in my system are undesirable. I own the latest registered version which I received as part of a giveaway. Cheers, AstroSkipper
    1 point
  25. That shouldn't really be the case, and I'm sorry about that, but I'm trying to prevent any misunderstandings, given the posts here. It is of course clear that Malwarebytes is no longer interested in old versions. They want to leave the era of Windows XP and Vista behind. If you have read my old posts about how I was treated in the Malwarebytes forum as a Windows XP user, especially by their moderators, there is no need for any further explanation. But there was also a small glimmer of hope where an ordinary member had apologised to me for his behaviour.
    1 point
  26. I don't have questions to the mods , but you do , and who are you to challenge them ?
    1 point
  27. That's for the local police to find out, in the countryside (where you seem to live).
    1 point
  28. Quite a weird choice. Not saying I have anything against them, but still... And all them are ChinoRusso browser repacks related, weird again ... Why you didn't mention young stars like @win32, for example ?
    1 point
  29. I find it sadly amusing that losing somebody else's file from a game is seemingly more important than losing the software development work. That must be a heck of a cousin. Cheers and Regards
    1 point
  30. You should only have ONE software firewall and only ONE real time AV active at any time. It is perfectly OK to have as many on demand AV programs available as you want. I would take the same approach for anti-spyware apps in order to minimize the likelihood of possible conflicts and for performance reasons. It just makes sense to minimize the number of active processes you have running at any given time, but have as many as you want available for on demand use. Depending on the AV you choose to use, some of them have anti-spyware functions built it as well. So yes, as I understand it, Avast and Essentials would/could conflict, and I think you should only run one. Personally, I think that "upgrade to Essentials" is a misnomer, and you might be better off with another choice, but then I tend to not trust any of MS's security "solutions". Cheers and Regards
    1 point
  31. Upload your file to some other service of your choice, mediafire, dropbox, whatever, and post a link to it here. Cheers and Regards
    1 point
×
×
  • Create New...