想把电脑从32位改为64位?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了想把电脑从32位改为64位?相关的知识,希望对你有一定的参考价值。
朋友们,目前电脑是32位,我准备换个4g到8g的内存条,然后重装为64位的操作系统,改成win8这类,多运行一些软件或者cad. envi这些。想问一下,换了内存条,重装以后,电脑能带得动吗?或者说换内存条值不值呢?
这个这个是从32位的,这个系统要改成64位的系统,那是不能够改的哈,那你除非把这个系统重装啊,只有这个对电脑系统进行重装,才能够把啊,这个改装成这个64位的系统 。 参考技术A 第一,32位系统已经是比较老旧了,可以更换64位系统的,但是有些东西不是增加内存就可以解决的,如果CPU等性能不行,安装再多内存条也是浪费,不会加速电脑运行的,该卡还是会卡的。第二,如果改64位系统,那么需要重装系统,envi不清楚,cad需要按照64位的CAD了。
第三,win8感觉不怎么样,要么安装win10,要么安装win7,不推荐使用win8
这配置,建议加个二手内存条,系统改到win7,将就用用差不多了,该换了。 参考技术B 这是不可能的。32位与64位是最基础的改变,是总线的改变,所有的东西都不能互换使用。想用64位就必须重新买台电脑。 参考技术C 从你发的截图来看,你的内存不只是内存小,显卡也小,这应该是好多年的旧机子,单纯的想通过更换内存条,来把电脑从32位变成64位,效果可能不会太好 参考技术D 芯片是三十二位,看看匹配的六十四位芯片有没有?换内存条没用。换芯片。换好后,在桌面上右键点我的电脑,属性。就看到了。
从 32 位 C# 到 64 位 C++ 的 PostMessage 参数
【中文标题】从 32 位 C# 到 64 位 C++ 的 PostMessage 参数【英文标题】:PostMessage params from 32-bit C# to 64-bit C++ 【发布时间】:2009-07-06 12:09:31 【问题描述】:我遇到了一个指针的内容问题,因为从 32 位 C# 应用程序传递的 wParam 正在更改为 64 位 C++ 进程。
有两个进程 32.exe(在 C# 中)和 64.exe(在 C++ 中)。 64.exe 作为 32.exe 的子进程启动。 64.exe 的 32.exe 发布窗口消息,其中一个具有 wParam,它是指向 RECT 结构数组的指针。 64.exe 和 32.exe 都有一个共同的 DLL(用 C++ 编写,当然是为不同的平台编译的),称为 32.dll 和 64.dll。
在 32.dll 中需要一个 RECT* 的函数直接从 32.exe 调用,具有相同的 RECT*,稍后发布,这很好用。之后它向 64.exe 发送一条消息,它调用相同的函数并将 wParam 转换为 RECT*:
else if (WM_SetDisabledAreas == message)
SetDisabledAreas((RECT*)wParam, (UINT)lParam);
留言如下:
if (Is64Bit() && SubProcess64 != null)
Win32.PostMessage(SubProcess64.MainWindowHandle, WindowMessages.SetDisabledAreas,
(uint)pointer.ToInt32(), length);
MessageBox.Show(pointer.ToString());
DLL32.SetDisabledAreas(pointer, length);
通过调试,我已经确认收到了消息,但是 wParam 地址与以前不同。这并不意外,但它现在指向的内存内容是未定义的(我在尝试查看内存时遇到访问冲突)。
这里发生了什么?
【问题讨论】:
您能否添加包含如何初始化指针变量的源代码? 和这个问题一模一样:***.com/questions/1086294/… 使用SendMessage会出现问题吗? 【参考方案1】:两个进程中的每一个都有自己的地址空间,因此来自进程 32.exe 的指针在 64.exe 中无效。
但是,这与 32 位和 64 位完全无关。您只需使用您选择的进程间通信技术在两个进程之间传输数据。
例如,您可以使用CreateFileMapping 创建共享内存的命名部分。
【讨论】:
我知道它们可以有不同的地址空间,但是当您传递指针时,Windows 不应该为您翻译吗? windows 应该如何知道 (uint)pointer.ToInt32() 是指向矩形数组的指针?以及调用时如何知道这个数组的长度? Windows 会为您翻译它知道的消息。对于自定义消息,它不知道数据是什么,所以它只是传递值而不对它们做任何事情。以上是关于想把电脑从32位改为64位?的主要内容,如果未能解决你的问题,请参考以下文章