标签: 64-bit

64位地址

我编译了64位Windows操作系统的应用程序.应用程序应保存64位地址,我必须决定变量类型,以保存它们.我想长期保存它们.但是sizeof(long) == 4.我在哪里以及如何保存地址

c c++ 64-bit memory-address visual-studio

0
推荐指数
2
解决办法
2350
查看次数

另一个进程文件句柄上的SetFilePointer()失败

我正在为第三方不可触及的控制台可执行文件制作GUI.此可执行文件读取输入文件,处理数据并生成输出文件.由于这个过程需要很长时间,我需要监控进度.

我想要做的是找到控制台可执行进程id(完成),进程id检索进程打开的文件列表(完成),然后,一旦识别出输入文件并且它的句柄被检索(完成) ,我想调用SetFilePointer(handle,0,currentPosition),因此它告诉我已经读取了多少文件.然后,(read/totalSize)将为我提供该过程的进度.

问题是调用SetFilePointer()总是返回0xFFFFFFFF(失败)而GetLastError()返回6(无效句柄).有任何想法吗?

先感谢您.

c# windows 64-bit winapi

0
推荐指数
1
解决办法
353
查看次数

ATAPI库无法在Windows 7×64中运行

我正在尝试使用ATAPI或Itapi 3(Gulmar)制作一个来电显示探测器,但是在我的操作系统中它没有工作,出现以下异常:

System.BadImageFormatException未处理
Message =无法加载文件或程序集'ITapi3,Version = 1.0.0.3,Culture = neutral,PublicKeyToken = 36377d9f6f1f4883'或其依赖项之一.尝试加载格式不正确的程序.
Source = IncomingSample
FileName = ITapi3,Version = 1.0.0.3,Culture = neutral,PublicKeyToken = 36377d9f6f1f4883
FusionLog
====预绑定状态信息===
LOG:User = Dragon-PC\Dragon
LOG:DisplayName = ITapi3,Version = 1.0.0.3,Culture = neutral,PublicKeyToken = 36377d9f6f1f4883
(完全指定)
日志:Appbase = file:/// C:/ Users/Dragon/Downloads/Compressed/ITapi3_Binaries/bin/Samples/Samples/IncomingSample/bin/x64/Release/
LOG:Initial PrivatePath = NULL
调用程序集:IncomingSample,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null.
===
日志:此绑定在默认加载上下文中启动.
日志:使用应用程序配置文件:C:\ Users\Dragon\Downloads\Compressed\ITapi3_Binaries\bin\Samples\Samples\IncomingSample\bin\x64\Release\IncomingSample.exe.Config
LOG:使用C:\ Windows中的计算机配置文件\ Microsoft.NET\Framework64\V2.0.50727\CONFIG\machine.config中.
日志:政策后参考:ITapi3,版本= 1.0.0.3,文化=中性,PublicKeyToken = 36377d9f6f1f4883日志
:尝试下载新的URL文件:/// C:/ Users/Dragon/Downloads/Compressed/ITapi3_Binaries/bin/Samples /Samples/IncomingSample/bin/x64/Release/ITapi3.DLL.
错误:无法完成程序集的设置(hr = 0x8007000b).探测终止.

StackTrace:
IncomingSample.IncomingForm..ctor()
在IncomingSample.Program.Main()中的C:\ Users\Dragon\Downloads\Compressed\ITapi3_Binaries\bin\Samples\Samples\IncomingSample\Program.cs:第17行
InnerException:

我尝试为x64和x86设置Active解决方案平台,但它不起作用,我该怎么办?

.net c# 64-bit tapi windows-7

0
推荐指数
1
解决办法
1715
查看次数

如何编译与32位库链接的64位文件

我的系统是Centos 5.8 64位,我想编译一个链接32位库的文件.我在编译时添加-m32,但结果显示"输入文件`gc_basic_call_model_voice_voice_video_3g_cnf_nbup.o'的i386:x86-64架构与i386输出不兼容".看来该文件无法在32位上编译.但是如果我不添加-m32,则无法编译库.如何成功编译文件,谢谢!

linux 64-bit 32-bit

0
推荐指数
1
解决办法
6419
查看次数

在Linux中为NTFS实现ls命令

我想建立一个bash脚本一样提供了一些功能,如LS,PWD,猫等在Linux系统上的NTFS工作.假设我有一个NTFS图像,我打开它作为fopen文件.然后,我读取了一些扇区,例如驻留在0x0B的BPB,并获取了一些关于NTFS映像的一般信息.我需要到达根目录指针然后遍历文件系统,以便实现这些功能,特别是对于ls和pwd.我谷歌了很多关于内部细节和NTFS的补偿,但我无法找到如何实现目标.没有可理解的文档或样本,我无法进一步发展.

任何帮助,文档,提示,胶印表等都将受到高度赞赏.

谢谢.

c filesystems 64-bit operating-system ntfs

0
推荐指数
1
解决办法
467
查看次数

在64位操作系统上启动32位进程

我的C#programm在64位操作系统(Windows)上启动java应用程序.Java进程是64位,如何修复我的启动代码以启动32位的java进程?

我的启动代码:

ProcessStartInfo info = new ProcessStartInfo();
info.WorkingDirectory = ServerProperties.ServerWorkingDirectory;
info.FileName = "java"
info.Arguments = "some arguements"
ServerProcess = new Process();
ServerProcess.StartInfo = info;
ServerProcess.Start();
Run Code Online (Sandbox Code Playgroud)

谢谢!

c# 64-bit x86

0
推荐指数
1
解决办法
1443
查看次数

超过64位时未定义的行为

我编写了一个将十进制数转换为二进制数的函数.我输入我的十进制数字作为long long int.它适用于小数字,但我的任务是确定计算机如何处理溢出,所以当我输入(2 ^ 63) - 1时,函数输出十进制值为9223372036854775808,二进制值等于-954437177.当我输入2 ^ 63这是64位机器无法保持的值时,我得到警告:整数常量太大而无符号且十进制常数仅在ISO C90和十进制输出中无符号值为负2 ^ 63,二进制数为0.我使用gcc作为编译器.这个结果是否正确?

代码如下:

#include <iostream>
#include<sstream>
using namespace std;
int main()
{
long long int answer;
long long dec;
string binNum;
stringstream ss;
cout<<"Enter the decimal to be converted:"<< endl;;
cin>>dec;
cout<<"The dec number is: "<<dec<<endl;
while(dec>0)
{
     answer = dec%2;
     dec=dec/2;
     ss<<answer;
     binNum=ss.str();
}
cout<<"The binary of the given number is: ";
for (int i=sizeof(binNum);i>=0;i--){
     cout<<binNum[i];}
return 0;
    }
Run Code Online (Sandbox Code Playgroud)

c++ 64-bit overflow

0
推荐指数
1
解决办法
1134
查看次数

Windows上的默认64位地址数据类型

我需要在Windows 7 64位上操作64位地址,我现在正在使用类似的东西

BYTE m_myAddress[8];
Run Code Online (Sandbox Code Playgroud)

但如果我需要添加0x60到地址,它会变得非常棘手.我可以转换它,但我想问一下哪种数据类型最适合这个.

应该使用什么数据类型来存储64位地址?

c c++ 64-bit memory-address

0
推荐指数
1
解决办法
222
查看次数

获取二进制的所有可能变体 - 给定模式

好吧,我正在尝试做的可能听起来有点复杂,但我仍然无法弄清楚:

  • 假设我们有一个unsigned long long64位整数
  • 我想设置一些"可变"位位置并获得所有可能的派生数字

例如

Pattern = 00000000XXXXX000XX000X 
Positions = 0,4,5,9,10,11,12,13

Result (Pattern, Positions) = {
    0000000000000000000000
    0000000000000000000001
    0000000000000000010000
    0000000000000000010001
    0000000000000000100000
    0000000000000000100001
    0000000000000000110000
    0000000000000000110001
    etc...
}
Run Code Online (Sandbox Code Playgroud)

我该怎么办呢?有任何想法吗?

c c++ 64-bit combinations bit-manipulation

0
推荐指数
1
解决办法
171
查看次数

C/C++中的Int类型

可能重复:
为什么C++ int和long类型都是4个字节?

在C/C++中,有什么区别:

u_int64 myNum;
Run Code Online (Sandbox Code Playgroud)

和:

unsigned long myNum;
Run Code Online (Sandbox Code Playgroud)

据我所知,两者都只有无符号整数,有64位内存.

c c++ int 64-bit

0
推荐指数
1
解决办法
324
查看次数