C++转C#紧急求助

问题描述

厂商提供了这两段c++的代码,要我们用在我们的程序。可是我们的程序是C#写的,谁能帮忙转成C#的语法,谢谢了!//寫入檔案,傳入機台名(32字元)與密碼(64字元)BOOLWritePasswordInfo(char*szMachineNo,char*szPassword){charstrDataFile[MAX_PATH]="C:\_UMA\DSC501H\comm\PROUMA.bin";//指定檔案名稱//編碼程序intii;for(ii=0;ii<32;ii++){if(szMachineNo[ii]=='')break;szMachineNo[ii]-=(32-ii);}for(ii=0;ii<64;ii++){if(szPassword[ii]=='')break;szPassword[ii]^=(64-ii);}//編碼程序//寫入PROUMA.bin(二進制)FILE*outfile=NULL;outfile=fopen(strDataFile,"wb");if(outfile!=NULL){fwrite(szMachineNo,sizeof(char),32,outfile);fwrite(szPassword,sizeof(char),64,outfile);fclose(outfile);}//寫入PROUMA.bin(二進制)returnTRUE;}//---------------------------------------------------------------------------------//讀取檔案,傳回機台名(32字元)與密碼(64字元)BOOLReadPasswordInfo(char*szMachineNo,char*szPassword){charstrDataFile[MAX_PATH]="C:\_UMA\DSC501H\comm\PROUMA.bin";//指定檔案名稱//讀取PROUMA.bin(二進制)FILE*infile=NULL;infile=fopen(strDataFile,"rb");if(infile!=NULL){fread(szMachineNo,sizeof(char),32,infile);fread(szPassword,sizeof(char),64,infile);fclose(infile);}//讀取PROUMA.bin(二進制)//解碼程序intii;for(ii=0;ii<32;ii++){if(szMachineNo[ii]=='')break;szMachineNo[ii]+=(32-ii);}for(ii=0;ii<64;ii++){if(szPassword[ii]=='')break;szPassword[ii]^=(64-ii);}//解碼程序returnTRUE;}//---------------------------------------------------------------------------------

解决方案

解决方案二:
直接生成DLL..用C#调...不就行了么--,其实我没看懂..
解决方案三:
dllimport引入char*用string或stringbuilder
解决方案四:
大概看了下,也就是數據類型和一些特殊方法需要按C#的來,別的也不需要改吧,自己琢磨一下,就當學習一下C#嘛,別輕易張口讓別人給你做。
解决方案五:
引用1楼l2999019的回复:

直接生成DLL..用C#调...不就行了么--,其实我没看懂..

正解!c#要用指针需要unsafe
解决方案六:
就这么简单个程序,还要紧急求助。不会一点C的代码都看不懂吧。就是打开个文件,按规则写入和读取数据。
解决方案七:
同问,直接DllImport调用C++的dll不就行了,还转神马啊?
解决方案八:
如果你能看懂这段代码是做神马的,你就知道用C#咋个写了···
解决方案九:
花俩小时把c#撸一遍就是你受益很长时间的事

时间: 2024-09-04 13:40:18

C++转C#紧急求助的相关文章

mysql双主问题-紧急求助:生产环境,mysql双主结构,备机同步DDL语句成功,但是同步DML语句失败

问题描述 紧急求助:生产环境,mysql双主结构,备机同步DDL语句成功,但是同步DML语句失败 问题描述:双主架构环境,最近在主机上执行DDL语句能成功同步到备机,但是在主机上执行DML语句失败,请各位帮忙看一下,谢谢! Linux版本: Red Hat Enterprise Linux Server release 5.4 (Tikanga) mysql版本 +----------------------------+ | @@version | +---------------------

120,紧急求助,WP,“NullReferenceException”异常

问题描述 总体描述,要实现的功能是一个网址收藏夹的功能,添加标题,简介和网址,将信息存储在独立存储空间,以"Collection"的形式.然后将独立存储空间中的数据绑定到页面"Pivot"的ListBox上,点击ListBox中的某一项,用浏览器打开相应的网址.1.添加的过程(这个没问题):if(!Collections.Favs.GetInstance().CheckExist(BodyTitle.Text,WebSite.Text)){CollectionIte

[紧急求助]asp.net的ajax设置超时后触发的事件

问题描述 [紧急求助][高分]asp.net的ajax设置超时后触发的事件asp.net的ajax中的AsyncPostBackTimeout设置超时为20秒,让它快点超时(因为有的客户等不了那么久),但它超时后只在浏览器的左下角出现错误提示,不会触发它的AsyncPostBackError的错误事件.用了try,catch只能捕获到错误,不能捕获超时.请高手帮帮忙 解决方案 解决方案二:AjaxPro.timeoutPeriod=1000*60*60;//单位是毫秒可以在页面Load事件中通过

mysql-【紧急求助】linux服务器MYSQL无规律的自动终止,导致网站无法运行

问题描述 [紧急求助]linux服务器MYSQL无规律的自动终止,导致网站无法运行 MYSQL没有任何规律的自动终止,研究了几天还没有解决,麻烦哪位大哥帮出点招 解决方案 可以写个脚本监控一下3306端口,如果mysql挂掉了就用脚本直接重启一下服务. 然后Linux定时任务每多长时间就去监控一下. 不过最终解决办法还是要找到为啥mysql会挂掉啊. 解决方案二: 是的,要找到原因,才能彻底解决这个问题 解决方案三: 估计是挂掉了,,,, 解决方案四: 要重装MYSQL? 昨天下午我从起服务器之

c++-紧急求助,刚接触这个,可能有点弱,不好意思

问题描述 紧急求助,刚接触这个,可能有点弱,不好意思 1.cppF:C++函数21.cpp(4) : error C2065: 'pstar' : undeclared identifierF:C++函数21.cpp(7) : error C2373: 'pstar' : redefinition; different type modifiers这是什么意思????怎么错的?#include void main(){ pstar();}void pstar(){ int i; for(i=1;

空间-紧急求助-(关于建立个人网站)

问题描述 紧急求助-(关于建立个人网站) 小弟是个建站方面的小白,又没有找到相关书籍,所以在这里向各位大哥请教下.具体说下.小弟想建立一个个人网站,并且使用本机做空间.现在已经购买了网站域名.然后绑定了本机IP.但是接下来就不知道怎么办了.怎么访问代码.怎么通过域名访问我的文件.==可能问题比较多.希望那个大神能把整个流程详细说下.小弟这里先谢谢咯. 解决方案 最好是买一个VPS,每个月只要几十元,省掉电费网费其实并不贵. 用自己的PC做服务器有几个问题,一个是确保运营商给你分配了公网IP.这个

[紧急求助]内网Win Server2008部署站点,域名访问时在IE中Cookie丢失

问题描述 [紧急求助]内网WinServer2008部署站点,域名访问时在IE中Cookie丢失我在公司内网的一台WindowsServer2008服务器上部署了一个mvc的站点(结合一个CMS:Sitefinity),设置了域名并修改host实现域名访问(内含子站点).然后发现通过FF,Chorme等都能通过该域名正常访问并登陆.但是IE下通过域名访问就会Cookie丢失,所以也不能登录,直接IP加端口就不会丢失cookie.IE中域名访问时可以看到请求里面有接收到cookie,但是点击"开发

紧急求助一个jquery mobile问题

问题描述 紧急求助一个jquery mobile问题 场景是这样的: 一个页面中有两个page如下 <div data-role=""page"" id=""page""> <div data-role=""header""data-position=""fixed""> <a href=""#in

java紧急求助,谢谢各位

问题描述 java紧急求助,谢谢各位 1C package com.houlibao.www; public class TestExample { public static void main(String[] args) { // TODO Auto-generated method stub int n = 7;/* 00000111 */ n <<= 3; System.out.println(n); /* 111000 */ System.out.println(Integer.t