小编Jav*_*492的帖子

安装SystemC for VS2013

我正在使用Windows 10 64位计算机与Visual Studio Professional 2013,我想安装SystemC.我下载了SystemC 2.3.1并尝试按照提供的"安装说明"进行操作,但它们稍微过时了.

首先,它说"对于VS 2005及更高版本的Windows 7机器",但我使用的是Windows 10,但我仍然试图遵循它.其次,由于此方法在VS2013中已更改,因此无法按照此处所述的方式包含srclib文件.似乎没有全局设置通过Tools->Options->Projects->VCC++路线选项卡.

现在,我能够成功地购买SystemC.sln解决方案.但是,当我尝试构建一个示例项目时,我收到以下错误:

链接:致命错误LNK1104:无法打开文件'C:\ Users\Andrew\Downloads\systemc-2.3.1a\systemc-2.3.1a\msvc80\SystemC\Debug.obj'

即使我认为我已经正确指定了项目属性中的srclib目录.

谁能解释如何在Windows 10 x64上使用VS2013构建SystemC?

systemc visual-studio-2013

4
推荐指数
1
解决办法
2683
查看次数

从另一个进程重新启动进程

我有两个流程:ProcessA和ProcessB.

当我启动我的应用程序时,我调用ProcessA CreateProcess()来启动ProcessB.当我的应用程序收到命令A时,ProcessA被ProcessB杀死.同样,ProcessB 应该在收到命令B时重新启动ProcessA.

我坚持的地方是重新启动ProcessA的过程.由于ProcessA具有重新启动ProcessB的代码,因此我无法阻止它重新启动ProcessB的另一个实例.理想情况下,我想只有1个ProcessB实例.

要从ProcessA创建ProcessB,我有以下代码:

for(int i32Index = 0; i32Index < NUM_PROCESS; i32Index++)
        {
            wcscpy(wcPath,Directorypath.c_str());
            wcscat(wcPath,wcProcess[i32Index]);
            RETAILMSG(1,(_T("Path:%s\r\n"),wcPath));
            bCreateProcessSuccess = CreateProcess(wcPath,   // No module name (use command line)
                                    NULL,                   // Command line
                                    NULL,                   // Process handle not inheritable
                                    NULL,                   // Thread handle not inheritable
                                    FALSE,                  // Set handle inheritance to FALSE
                                    0,                      // No creation flags
                                    NULL,                   // Use parent's environment block
                                    NULL,                   // Use parent's starting directory 
                                    &si,                    // Pointer to STARTUPINFO structure
                                    &pi ) …
Run Code Online (Sandbox Code Playgroud)

c++ winapi

3
推荐指数
1
解决办法
203
查看次数

无法从GetSystemTime()获取毫秒

我正在尝试打印秒和毫秒分辨率计时和我正在使用GetSystemTime().

这是我的代码:

GetSystemTime(&datetime);
RETAILMSG(1,(_T("Time After Data Sent to USB: %d:%d\r\n"), datetime.wSecond, datetime.wMilliseconds));  
Run Code Online (Sandbox Code Playgroud)

我使用打印到平台构建器调试输出RETAILMSG(),但我只能打印高达秒的分辨率,所以我会看到像48:0这样的毫秒是空白的.

我不确定为什么会这样,因为我没有收到任何投诉.我认为这与实施有关RETAILMSG().

我可以使用这个或替代品来解决这个问题吗?

谢谢,

编辑:我正在开发Windows Embedded Compact 7

c++ visual-studio-2008-sp1 platform-builder

2
推荐指数
1
解决办法
678
查看次数

为什么 String.format 接受整数代替 %s?

查看 Java String.format() 的一些参考资料,我看到他们提到它具有以下格式:

public static String format(String format, Object... args)
Run Code Online (Sandbox Code Playgroud)

所以它允许我写以下内容:

String newStr = String.format("%s,%s,%s", 1, 2, 3);
Run Code Online (Sandbox Code Playgroud)

但我不能这样做:

String newStr = String.format("%d,%d,%d", "1", "2", "3");
Run Code Online (Sandbox Code Playgroud)

为什么我可以使用整数代替 %s 而不是反之亦然?它是否在进行从 int 到 string 本身的类型转换?

java string string.format string-formatting

2
推荐指数
1
解决办法
48
查看次数

使用System :: AnsiString类

我正在尝试从以下答案中导入代码:获取完整的运行进程列表(Visual C ++)

bool FindRunningProcess(AnsiString process) {
/*
Function takes in a string value for the process it is looking for like ST3Monitor.exe
then loops through all of the processes that are currently running on windows.
If the process is found it is running, therefore the function returns true.
*/
AnsiString compare;
bool procRunning = false;

HANDLE hProcessSnap;
PROCESSENTRY32 pe32;
hProcessSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);

if (hProcessSnap == INVALID_HANDLE_VALUE) {
    procRunning = false;
} else {
    pe32.dwSize = sizeof(PROCESSENTRY32);
    if …
Run Code Online (Sandbox Code Playgroud)

c++ winapi

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

Array vs Vector用于应用程序的运行时

我正在尝试决定是否应该为我的案例使用数组或向量,我将在下面描述:

考虑这种情况:您需要存储3种不同类型的元素:整数(这是1-4中表示输出的整数),布尔值(表示输出是真还是假)和第二个整数(范围0-3表示状态).可以创建的任何值的最大数量为72.

我实现这一目标的方法是创建3个单独的数组,当创建包含上述信息的对象时,这些数组将被填充.同样,当对象被销毁时,对象特定信息被删除.从应用程序执行开始到应用程序关闭(假设对象未被销毁),需要此信息.

由于很少在我的应用程序中创建这些对象中的72个(用例极不可能),我不确定它是否是智能的(就内存而言)从一开始就将这些全局数组初始化为72,或者使用矢量并使其随着对象的创建而增长.

所以,我的问题是,鉴于上述情况,在这种情况下使用数组或向量是否更好?

注意:要记住的一件事是我的数组的索引表示创建对象的特定顺序,使其成为跟踪元素的简单方法.即,三个数组中的任何一个的索引0处的信息是对象1等的信息...我能够保持这个相同的索引系统以便用向量进行参考吗?

c++ arrays vector

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