Bezmislenna greshka
9 отговора
619 прегледа
Bezmislenna greshka
Zna4i kompiliram si programkata s Dev-Cpp v4.980 i suotvetno se izpulniava. A kogato trebe da svurshi pri return 0; mi dava nekakva greshka.
Programata predstavliava installer. Tupoto e 4e izpolzvam c++ samo za proverka na versiite i zadavane na novi instrukcii vuv batch file.
Za susjalenie firewall-a ne pozwoliava ftp dostup ili neshto podobno i ne moga da uploadna source-a. Edinstwenia na4in e ako drasnete edin mail na alexem@abv.bg za da vi otgoworia s attachment. She sum vi mnogo blagodaren.
Programata predstavliava installer. Tupoto e 4e izpolzvam c++ samo za proverka na versiite i zadavane na novi instrukcii vuv batch file.
Za susjalenie firewall-a ne pozwoliava ftp dostup ili neshto podobno i ne moga da uploadna source-a. Edinstwenia na4in e ako drasnete edin mail na alexem@abv.bg za da vi otgoworia s attachment. She sum vi mnogo blagodaren.
Re: Bezmislenna greshka
Някой деструктор ти гърми най-вероятно.
Btw, ако си зад firewall може и да можеш да upload-неш сорса, просто трябва да зададеш да се ползва passive mode. Освен ако не е блокиран порта де.
Btw, ако си зад firewall може и да можеш да upload-неш сорса, просто трябва да зададеш да се ползва passive mode. Освен ако не е блокиран порта де.
Re: Bezmislenna greshka
Ne ne sum polzval klasove. Eto go koda:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
int CheckVersion(char *SourceDir);
int SetNewInstructions(int TypeOfInstr, char *SourceDir);
int main(int argc, char *argv[])
{
char SDir[]="E:\\tmp\\carus\\Tausch-Dateien"; // the source dir Windows version
char DosSDir[]="E:\\TMP\\CARUS\\TAUSC~YL"; // the source dir Dos version
int Result;
Result=CheckVersion(SDir);
SetNewInstructions(Result,SDir);
system("PAUSE");
return 0;
}
int CheckVersion(char *SourceDir)
{
FILE *f1;
FILE *f2;
// version variables
float InstalledVersion; // on the pc
float VersionOnNetwork; // on the network
char *VerFile;
f1=fopen("update\\ver.txt","r");
if (f1==NULL)
{
f1=fopen("ver.txt","r");
}
// fill the source ver file string
strcpy(VerFile,SourceDir);
strcat(VerFile,"\\ver.txt");
f2=fopen(VerFile,"r");
if (f2==NULL)
{
printf("f2");
}
fscanf(f1,"%f",&InstalledVersion);
fscanf(f2,"%f",&VersionOnNetwork);
if (InstalledVersion < VersionOnNetwork)
{
printf("Version Checked.. \n Files vertig fuer Instalation \n");
fclose(f1);
fclose(f2);
return 1;
}
else
{
printf("Es gibt kein neues version auf dem server. \n");
fclose(f1);
fclose(f2);
return 0;
}
}
int SetNewInstructions(int TypeOfInstr, char *SourceDir)
{
// Open newinst.bat to add new instructions
FILE* fp;
fp=fopen("update\\newins.bat","w+");
if (TypeOfInstr==1)
{
fprintf(fp,"copy %s\\ver.txt update\\ver.txt \n",SourceDir);
fprintf(fp,"copy %s\\data.exe data.exe \n");
fprintf(fp,"data.exe \n");
fprintf(fp,"pause \n");
fprintf(fp,"del data.exe j \n");
fclose(fp);
return 1;
}
else
{
fclose(fp);
return 0;
}
}
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
using namespace std;
int CheckVersion(char *SourceDir);
int SetNewInstructions(int TypeOfInstr, char *SourceDir);
int main(int argc, char *argv[])
{
char SDir[]="E:\\tmp\\carus\\Tausch-Dateien"; // the source dir Windows version
char DosSDir[]="E:\\TMP\\CARUS\\TAUSC~YL"; // the source dir Dos version
int Result;
Result=CheckVersion(SDir);
SetNewInstructions(Result,SDir);
system("PAUSE");
return 0;
}
int CheckVersion(char *SourceDir)
{
FILE *f1;
FILE *f2;
// version variables
float InstalledVersion; // on the pc
float VersionOnNetwork; // on the network
char *VerFile;
f1=fopen("update\\ver.txt","r");
if (f1==NULL)
{
f1=fopen("ver.txt","r");
}
// fill the source ver file string
strcpy(VerFile,SourceDir);
strcat(VerFile,"\\ver.txt");
f2=fopen(VerFile,"r");
if (f2==NULL)
{
printf("f2");
}
fscanf(f1,"%f",&InstalledVersion);
fscanf(f2,"%f",&VersionOnNetwork);
if (InstalledVersion < VersionOnNetwork)
{
printf("Version Checked.. \n Files vertig fuer Instalation \n");
fclose(f1);
fclose(f2);
return 1;
}
else
{
printf("Es gibt kein neues version auf dem server. \n");
fclose(f1);
fclose(f2);
return 0;
}
}
int SetNewInstructions(int TypeOfInstr, char *SourceDir)
{
// Open newinst.bat to add new instructions
FILE* fp;
fp=fopen("update\\newins.bat","w+");
if (TypeOfInstr==1)
{
fprintf(fp,"copy %s\\ver.txt update\\ver.txt \n",SourceDir);
fprintf(fp,"copy %s\\data.exe data.exe \n");
fprintf(fp,"data.exe \n");
fprintf(fp,"pause \n");
fprintf(fp,"del data.exe j \n");
fclose(fp);
return 1;
}
else
{
fclose(fp);
return 0;
}
}
Re:
ami source si izglejda savsem nared...
osven 2 neshta
1. Po malko veroqtnoto:
ne izpolzvai system("PAUSE") a getch();
2.e tva malko ma symnqva
if (f2==NULL)
{
printf("f2");
}
fscanf(f1,"%f",&InstalledVersion);
fscanf(f2,"%f",&VersionOnNetwork);
ako f2 e NULL ti samo go printirash kato greshka i sled tova pak se opitvash da chetesh ot tozi file
sled printf("f2") mojesh da slojesh ili exit(1) ili nekyf return
sichku drugo za sega mi izglejda nared
Adi uspeh
osven 2 neshta
1. Po malko veroqtnoto:
ne izpolzvai system("PAUSE") a getch();
2.e tva malko ma symnqva
if (f2==NULL)
{
printf("f2");
}
fscanf(f1,"%f",&InstalledVersion);
fscanf(f2,"%f",&VersionOnNetwork);
ako f2 e NULL ti samo go printirash kato greshka i sled tova pak se opitvash da chetesh ot tozi file
sled printf("f2") mojesh da slojesh ili exit(1) ili nekyf return
sichku drugo za sega mi izglejda nared
Adi uspeh
Re: Bezmislenna greshka
Грешката е доста преди return 0; Просто изобщо не си направил масива за VerFile. Преди
strcpy(VerFile,SourceDir);
трябва да сложиш едно
VerFile = new char[EnoughSpace];
После да не забравиш и да го изтриеш.
Със здраве.
Мечтата е мисъл, мисълта е идея, всяка идея се реализира. Аз не мечтая, а реализирам идеите си.
strcpy(VerFile,SourceDir);
трябва да сложиш едно
VerFile = new char[EnoughSpace];
После да не забравиш и да го изтриеш.
Със здраве.
Мечтата е мисъл, мисълта е идея, всяка идея се реализира. Аз не мечтая, а реализирам идеите си.
Re: Bezmislenna greshka
4ove4e mnogo ti blagodaria, ot dva dni se mu4a vurho tozi problem. Programata mi raboteshe no ne mojeha da ia polzvat shoto davala suobshtenie za greshka. Uff 10x ako ti trebe source code za kniga na posetitelia na php drasni edin mail na [email protected] abe koito iska da drasne de 
c++ standard
i vse pak, za da e tova syvmestim c++ kod, osobeno kato se ima predvid, che tazi versia na dev-c++ e sys gcc 3.2.3, ako si drypnal cialata, redno e da ne pishesh:
#include <stdlib.h>
a
#include <cstdlib>
i t.n. za vsichki standartni C zaglavni files
togava chak deklaraciite popadat v namespace std, koeto bi dalo niakakkyv smisyl na reda
using namespace std
kato osven tova i izvikvaniata stavat extern "C", koeto syshto e zelatelno
#include <stdlib.h>
a
#include <cstdlib>
i t.n. za vsichki standartni C zaglavni files
togava chak deklaraciite popadat v namespace std, koeto bi dalo niakakkyv smisyl na reda
using namespace std
kato osven tova i izvikvaniata stavat extern "C", koeto syshto e zelatelno