相对路径使用方法

c++
// 没有盘符,为相对路径
strDllPath.Trim(_T("\\"));
strDllPath = CEnvironment::ConfigAppDir()+strDllPath;

c#
String strDir = Environment.CommandLine.Substring(0, Environment.CommandLine.LastIndexOf(@"\XQ-4."));
或者
Environment.CurrentDirectory // 当操作中途有使用文件打开对话框的情况时,该函数可能会发生变化

 

《Environment.h》

#pragma once
class CEnvironment
{
public:
CEnvironment(void);
~CEnvironment(void);
static CString ConfigAppDir(void);
static int Init(void);
static CString m_AppPath;
static CString m_AppDriver;
static CString m_AppDir;
static CString m_AppFileName;
static CString m_AppFileExt;

static void OutputMsg01(CString tag , CString str , BOOL clean);
};

《Environment.cpp》

#include "StdAfx.h"
#include "Environment.h"

CString CEnvironment::m_AppPath = _T("");
CString CEnvironment::m_AppDriver = _T("");
CString CEnvironment::m_AppDir = _T("");
CString CEnvironment::m_AppFileName = _T("");
CString CEnvironment::m_AppFileExt = _T("");

CEnvironment::CEnvironment(void)
{
}


CEnvironment::~CEnvironment(void)
{
}


int CEnvironment::Init(void)
{
if (_T("")!=m_AppDriver)
return 0;

TCHAR path[MAX_PATH];
memset(path,0,sizeof(TCHAR)*MAX_PATH);
GetModuleFileName( NULL,path, MAX_PATH );

TCHAR drive[MAX_PATH],dir[MAX_PATH],fname[MAX_PATH],ext[MAX_PATH];
_tsplitpath(path,drive,dir,fname,ext );

m_AppDriver = drive;
m_AppDir = dir;
m_AppFileName = fname;
m_AppFileExt = ext;
//m_AppPath = drive;

return 1;
}

CString CEnvironment::ConfigAppDir(void)
{
Init();
return m_AppDriver+m_AppDir;
//m_AppPath = drive;
//m_AppPath += dir;
}


void CEnvironment::OutputMsg01(CString tag , CString str , BOOL clean)
{
CString strFilePath = _T("c:\\output111.txt");
CStdioFile file;
BOOL res = FALSE;
if (clean)
{
res = file.Open(strFilePath, CFile::modeCreate|CFile::modeReadWrite);
}
else
{
res = file.Open(strFilePath, CFile::modeCreate|CFile::modeNoTruncate|CFile::modeReadWrite);
}

if (res)
{
if (!clean)
{
file.SeekToEnd();
}

if (_T("")!=tag)
{
file.WriteString(tag);
file.WriteString(_T("\r\n"));
}

if (_T("")!=str)
{
file.WriteString(str);
file.WriteString(_T("\r\n"));
}

file.Close();
}
}

转载于:https://www.cnblogs.com/carl2380/archive/2012/01/09/2316916.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值