头文件
#ifndef __EXPORT_H__
#define __EXPORT_H__#if _MSC_VER > 1000
#pragma once
#endif#ifdef TESTDLL_EXPORTS
#define TESTDLL_API __declspec(dllexport)
#else
#define TESTDLL_API __declspec(dllimport)
#endifextern TESTDLL_API int UserID;
extern "C" TESTDLL_API int GetShareSeg();
extern "C" TESTDLL_API void SetShareSeg(int iID);
#endif // END EXPORT.H
cpp文件:
#include "stdafx.h"
#include "export.h"#pragma data_seg("ShareData")
int UserID = 9;
#pragma data_seg()
#pragma comment(linker,"\section:ShareData,rws")int TESTDLL_API GetShareSeg()
{
UserID = UserID + 1;
return UserID;
}void TESTDLL_API SetShareSeg(int iID)
{
UserID = iID;
}大家看看有什么问题吗. dll调用文件就是调用int TESTDLL_API GetShareSeg() 这个函数几次看看能不能改变userid.
#ifndef __EXPORT_H__
#define __EXPORT_H__#if _MSC_VER > 1000
#pragma once
#endif#ifdef TESTDLL_EXPORTS
#define TESTDLL_API __declspec(dllexport)
#else
#define TESTDLL_API __declspec(dllimport)
#endifextern TESTDLL_API int UserID;
extern "C" TESTDLL_API int GetShareSeg();
extern "C" TESTDLL_API void SetShareSeg(int iID);
#endif // END EXPORT.H
cpp文件:
#include "stdafx.h"
#include "export.h"#pragma data_seg("ShareData")
int UserID = 9;
#pragma data_seg()
#pragma comment(linker,"\section:ShareData,rws")int TESTDLL_API GetShareSeg()
{
UserID = UserID + 1;
return UserID;
}void TESTDLL_API SetShareSeg(int iID)
{
UserID = iID;
}大家看看有什么问题吗. dll调用文件就是调用int TESTDLL_API GetShareSeg() 这个函数几次看看能不能改变userid.
解决方案 »
- Receive() 阻塞问题 大家都来看看!!!!!!!!!!!
- QQ等软件崩溃时的那个bugReport模块的怎么做的,原理是什么
- 将"C语言字符串表达式"转换字符串(谢谢关注,顶者有分)
- 如何响应 CEdit 中的 WM_LBUTTONDOWN 消息?
- 谁知道并口起始地址(如0x378)存放在BIOS的位置(f****)?
- 购买软件时一个license到底是什么含义
- 我想做一个程序,实现远程安装,请问这需要那些知识,有资料的望能给提供点资料,
- 请教,在MFC中如何将一个Word文件(包括文字,图片)读到一个控件里(如edit或其他)显示出来
- 学了几个月,想问一个问题:我为什麽要学VC?
- 在应用程序里设置鼠标问题,请教高手!
- c语言中分配存储空间是否需要时间?
- 一个关于数据库连接的问题,前辈请进!
写了一个调用程序 CString strTemp;
int i = UserID;
i = GetShareSeg();
void* p = (void*)&UserID;
p = (void*)&i;
strTemp.Format("0X%x", p);
strTemp.Format("%d", i);
AfxMessageBox((LPSTR)(LPCSTR)strTemp);我是隐是调用的, 有问题吗??
我运行这个程序几次(没有关闭前面的) 按理说userid应该变了呀, 为什么一直是messagebox 出来总是10呢.
#pragma comment(linker,"\section:ShareData,rws")
为
#pragma comment(linker,"/section:ShareData,rws")
试试
改
#pragma comment(linker,"\section:ShareData,rws")
为
#pragma comment(linker,"/section:ShareData,rws")
试试呵呵, 调了2个小时, faint.