473,218 Members | 1,483 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,218 software developers and data experts.

Memory errors HELP!

I have the following test code that opens and reads a file.
The file is over 19000 lines long. The file contains two fields
on each line: "text,text\n"

I have placed a test that for loops up to 182 and the program errors
out.
I placed the error message after the code:

I am using VC++ Express Edition

#include <fstream>
#include <iostream>
#include <string>
#include <stdio.h>
#define MOVEX_QUERY "C:\\DWG_DATA\\DOCUMENTS_movex.csv"

int main(){
char * document;
char * edition;
char * str1;
char * next_token1;
int i=0;

using std::string;
using std::ifstream;
using std::cout;

ifstream inf(MOVEX_QUERY);

if (inf)
{
char namn[20000][30];
while ((inf.getline(namn[i], 30)) != NULL)++i;
for (int i = 0; i < 182; ++i){
str1 = namn[i];
cout << str1 << '\n';

document = strtok_s( str1, " ,\t\n", &next_token1);
edition = strtok_s( NULL, " ,\t\n", &next_token1);
std::string doc(document);
std::string edi(edition);
if ( edi == doc ) cout << "THIS WORKS" <<'\n';
printf( "%s\n", document );
printf( "%s\n", edition );
cout << i <<'\n';
}

}
else
{
cout << "Could not open file\n";
return 1;
}
cout << "PROCESSING COMPLETE\n";
return 0;
}
This is just test code, there are things that could be removed.
If I change the for loop to 182 or greater
I get a message as follows:
Unhandled Exception: System.AccessViolationException: Attempted to read
or write
protected memory. This is often an indication that other memory is
corrupt.
at std.basic_string<char,std::char_traits<char>,std:: allocator<char>
.{ctor}

(basic_string<char\,std::char_traits<char>\,std::a llocator<char> >* ,
SByte* )
at main() in c:\documents and settings\grant\my documents\visual
studio 2005\
projects\documents\document1\document1\doc1.cpp:li ne 31
Press any key to continue . . .

Attempted to read or write protected memory

Please let me know what you think

Thanks

Feb 8 '06 #1
10 2434

electrixnow wrote:
I have the following test code that opens and reads a file.
The file is over 19000 lines long. The file contains two fields
on each line: "text,text\n"

I have placed a test that for loops up to 182 and the program errors
out.
I placed the error message after the code:

I am using VC++ Express Edition


[snipped code]

Hard to tell for sure, but it looks like a memory error. You're trying
to allocate 20000 strings of 30 character length on the stack. That's
stretching it for sure.

The code you posted mixes a lot of "C style" with C++ functions and
classes. Why not go all the way and make your code look a little more
friendly?

Like so:
#include <iostream>
#include <string>
#include <fstream>
#include <sstream>
#include <vector>

using namespace std;

struct Doc
{
string name;
string edition;
};

int main()
{
ifstream ff( "test.dat" );
string line;

vector<Doc> documents;
documents.reserve( 10000 );

while( getline( ff, line ))
{
string::size_type comma_pos = line.find( ',' );
if ( string::npos == comma_pos )
continue;

Doc doc;
doc.name = line.substr( 0, comma_pos );
doc.edition = line.substr( comma_pos + 1 );

cout << doc.name << " " << doc.edition << endl;

documents.push_back( doc );
}
}

You can then process the documents vector in any way you like.

Cheers,
Andre

Feb 8 '06 #2
In article <11*********************@g47g2000cwa.googlegroups. com>,
"electrixnow" <info...@charter.net> wrote:
I have the following test code that opens and reads a file.
The file is over 19000 lines long. The file contains two fields
on each line: "text,text\n"
I must say, you have a rather awkward mix of C and C++ code. I think you
would be much better off if you removed all the char*s
I have placed a test that for loops up to 182 and the program errors
out.
I placed the error message after the code:
I just ran it out to 1750 lines with no crash... I suspect that your
code is only reading in 182 lines. :-/
I am using VC++ Express Edition

#include <fstream>
#include <iostream>
#include <string>
#include <stdio.h>
#define MOVEX_QUERY "C:\\DWG_DATA\\DOCUMENTS_movex.csv"

int main(){
char * document;
char * edition;
char * str1;
char * next_token1;
int i=0;
Did you know you define two different variables both with the name 'i'?
(Here and in the for loop below.) Not a good idea and maybe the source
of your problem.

Change the line above to "int lines = 0;"
using std::string;
using std::ifstream;
using std::cout;

ifstream inf(MOVEX_QUERY);

if (inf)
{
char namn[20000][30];
while ((inf.getline(namn[i], 30)) != NULL)++i;
The above 'i's will have to be changed to 'lines' and a guard would
probably be a good idea.

while (lines < 20000 && inf.getline(namn[lines], 30) != NULL)
++lines;

I suspect that if you put:

cout << lines << '\n';

You will find that it outputs 182.
for (int i = 0; i < 182; ++i){
Change the '182' above to 'lines'
str1 = namn[i];
cout << str1 << '\n';

document = strtok_s( str1, " ,\t\n", &next_token1);
edition = strtok_s( NULL, " ,\t\n", &next_token1);
std::string doc(document);
std::string edi(edition);
if ( edi == doc ) cout << "THIS WORKS" <<'\n';
printf( "%s\n", document );
printf( "%s\n", edition );
cout << i <<'\n';
}

}
else
{
cout << "Could not open file\n";
return 1;
}
cout << "PROCESSING COMPLETE\n";
return 0;
}
This is just test code, there are things that could be removed.
If I change the for loop to 182 or greater
I get a message as follows:
Unhandled Exception: System.AccessViolationException: Attempted to read
or write
protected memory. This is often an indication that other memory is
corrupt.
at std.basic_string<char,std::char_traits<char>,std:: allocator<char>
.{ctor}

(basic_string<char\,std::char_traits<char>\,std::a llocator<char> >* ,
SByte* )
at main() in c:\documents and settings\grant\my documents\visual
studio 2005\
projects\documents\document1\document1\doc1.cpp:li ne 31
Press any key to continue . . .

Attempted to read or write protected memory

Please let me know what you think

Thanks


--
Magic depends on tradition and belief. It does not welcome observation,
nor does it profit by experiment. On the other hand, science is based
on experience; it is open to correction by observation and experiment.
Feb 9 '06 #3
In article <11**********************@g47g2000cwa.googlegroups .com>,
"in*****@gmail.com" <in*****@gmail.com> wrote:
electrixnow wrote:
I have the following test code that opens and reads a file.
The file is over 19000 lines long. The file contains two fields
on each line: "text,text\n"

I have placed a test that for loops up to 182 and the program errors
out.
I placed the error message after the code:

I am using VC++ Express Edition


[snipped code]

Hard to tell for sure, but it looks like a memory error. You're trying
to allocate 20000 strings of 30 character length on the stack. That's
stretching it for sure.

The code you posted mixes a lot of "C style" with C++ functions and
classes. Why not go all the way and make your code look a little more
friendly?

Like so:
#include <iostream>
#include <string>
#include <fstream>
#include <sstream>
#include <vector>

using namespace std;

struct Doc
{
string name;
string edition;
};

int main()
{
ifstream ff( "test.dat" );
string line;

vector<Doc> documents;
documents.reserve( 10000 );

while( getline( ff, line ))
{
string::size_type comma_pos = line.find( ',' );
if ( string::npos == comma_pos )
continue;

Doc doc;
doc.name = line.substr( 0, comma_pos );
doc.edition = line.substr( comma_pos + 1 );

cout << doc.name << " " << doc.edition << endl;

documents.push_back( doc );
}
}

You can then process the documents vector in any way you like.


Or better yet...

int main( )
{
ifstream inf( MOVEX_QUERY );
vector<Document> documents;
Document doc;
while ( getline( inf, doc.name, ',' ) && getline( inf, doc.edition ) )
documents.push_back( doc );
// do what you will to the documents...
}

From what I think I know about the OP's problem to solve, a map may make
more sense...

int main( )
{
ifstream inf( MOVEX_QUERY );
map<string, string> documents;
string doc;
string edi;
while ( getline( inf, doc, ',' ) && getline( inf, edi ) ) {
if ( documents.count( doc ) == 0 )
documents.insert( make_pair( doc, edi ) );
else
cout << "duplicate entry found\n"; // what to do here?
}

The above will make it easer to compare the edition of a document from
this file, to the edition of the same document of the other file.

--
Magic depends on tradition and belief. It does not welcome observation,
nor does it profit by experiment. On the other hand, science is based
on experience; it is open to correction by observation and experiment.
Feb 9 '06 #4
I have changed the code and it still blows up at 182 lines
I found that if I comment out the two string lines noted that it runs
to 19000 + lines. in*****@gmail.com suggested I was pushing it with
the array size but it works fine. I the array is full with no error
after the
while statement.

Any clue?

and I am mixing C and C++ because have just started using C++
with VC++ Express, it was free, and I have not found a good online
C++ reference. I use to program in C type shell languages in the 80's.
So I need a good online or electronic VC++ reference library. or
hardback
would work, any suggestions are welcome. Thanks for the help thus far.

#include <fstream>
#include <iostream>
#include <string>

#define MOVEX_QUERY "C:\\DWG_DATA\\DOCUMENTS_movex.csv" //

int main(){
char * document;
char * edition;
char * str1;
char * next_token1;
int lines=0;

using namespace std;

ifstream inf(MOVEX_QUERY);

if (inf)
{
char namn[20000][30];
while (lines < 20000 && (inf.getline(namn[lines], 30)) !=
NULL)++lines;
for (int i = 0; i < lines; ++i){
str1 = namn[i];
cout << str1 << '\n';

document = strtok_s( str1, " ,\t\n", &next_token1);
edition = strtok_s( NULL, " ,\t\n", &next_token1);
// string doc(document); // if these two lines are removed
// string edi(edition); // it will run to 19000 + lines
printf( "%s\n", document );
printf( "%s\n", edition );
cout << i <<'\n';
}

}
else
{
cout << "Could not open file\n";
return 1;
}
cout << "PROCESSING COMPLETE\n";
return 0;
}

Here is a sample of the data being input.

00-00008RA,0004,,,,,,
00-00009RA,0003,,,,,,
00-00010RA,0003,,,,,,
00-00019RA,0005,,,,,,
00-00021RA,0016,,,,,,
00-00036RA,0016,,,,,,
00-00041RA,0005,,,,,,
00-00042RA,0009,,,,,,
00-00043RA,0003,,,,,,
00-00045RA,0008,,,,,,
00-00047RA,0018,,,,,,
00-00051RA,0018,,,,,,
00-00052RA,0029,,,,,,
00-00054RA,0028,,,,,,
00-00055RA,0023,,,,,,
00-00056RA,0006,,,,,,
00-00057RA,0008,,,,,,
00-00058RA,0005,,,,,,
00-00059RA,0005,,,,,,
00-00076RA,0006,,,,,,
00-00085RA,0025,,,,,,
00-00086RA,0025,,,,,,

Feb 9 '06 #5
On Wed, 08 Feb 2006 15:01:47 -0800, electrixnow wrote:
I have the following test code that opens and reads a file.
The file is over 19000 lines long. The file contains two fields
on each line: "text,text\n"

I have placed a test that for loops up to 182 and the program errors
out.
What is on line 182 and 183 of the text file?
I placed the error message after the code:

I am using VC++ Express Edition

#include <fstream>
#include <iostream>
#include <string>
#include <stdio.h>
#define MOVEX_QUERY "C:\\DWG_DATA\\DOCUMENTS_movex.csv"

int main(){
char * document;
char * edition;
char * str1;
char * next_token1;
int i=0;

using std::string;
using std::ifstream;
using std::cout;

ifstream inf(MOVEX_QUERY);

if (inf)
{
char namn[20000][30];
Could any line be longer than 30 characters?
while ((inf.getline(namn[i], 30)) != NULL)++i;
for (int i = 0; i < 182; ++i){
str1 = namn[i];
cout << str1 << '\n';

document = strtok_s( str1, " ,\t\n", &next_token1);
edition = strtok_s( NULL, " ,\t\n", &next_token1);
std::string doc(document);
std::string edi(edition);
What happens here if the line doesn't have a comma?
"document" or "edition" would be null, and initializing a string from that
will die the way you described.
if ( edi == doc ) cout << "THIS WORKS" <<'\n';
printf( "%s\n", document );
printf( "%s\n", edition );
cout << i <<'\n';
}

}
else
{
cout << "Could not open file\n";
return 1;
}
cout << "PROCESSING COMPLETE\n";
return 0;
}


Print out each line as you process it. See what the offending line looks
like.

- Jay

Feb 9 '06 #6
In article <11**********************@g44g2000cwa.googlegroups .com>,
"electrixnow" <info...@charter.net> wrote:
I have changed the code and it still blows up at 182 lines
I found that if I comment out the two string lines noted that it runs
to 19000 + lines. in*****@gmail.com suggested I was pushing it with
the array size but it works fine. I the array is full with no error
after the
while statement.

Any clue?

and I am mixing C and C++ because have just started using C++
with VC++ Express, it was free, and I have not found a good online
C++ reference. I use to program in C type shell languages in the 80's.
So I need a good online or electronic VC++ reference library. or
hardback
would work, any suggestions are welcome. Thanks for the help thus far.
<http://www.sgi.com/tech/stl/>

#include <fstream>
#include <iostream>
#include <string>

#define MOVEX_QUERY "C:\\DWG_DATA\\DOCUMENTS_movex.csv" //

int main(){
char * document;
char * edition;
char * str1;
char * next_token1;
int lines=0;

using namespace std;

ifstream inf(MOVEX_QUERY);

if (inf)
{
char namn[20000][30];
while (lines < 20000 && (inf.getline(namn[lines], 30)) !=
NULL)++lines;
for (int i = 0; i < lines; ++i){
str1 = namn[i];
cout << str1 << '\n';

document = strtok_s( str1, " ,\t\n", &next_token1);
edition = strtok_s( NULL, " ,\t\n", &next_token1);
I think the reason it crashes is because at line 182 in the file,
'document' is NULL. To prove it do this:

string doc;
string edi;
if ( document && edition ) {
doc = document;
edi = edition;
}
else { cout << "Would have crashed!\n"; }
// string doc(document); // if these two lines are removed
// string edi(edition); // it will run to 19000 + lines
printf( "%s\n", document );
printf( "%s\n", edition );
cout << i <<'\n';
}

}
else
{
cout << "Could not open file\n";
return 1;
}
cout << "PROCESSING COMPLETE\n";
return 0;
}

Here is a sample of the data being input.

00-00008RA,0004,,,,,,
00-00009RA,0003,,,,,,
00-00010RA,0003,,,,,,
00-00019RA,0005,,,,,,
00-00021RA,0016,,,,,,
00-00036RA,0016,,,,,,
00-00041RA,0005,,,,,,
00-00042RA,0009,,,,,,
00-00043RA,0003,,,,,,
00-00045RA,0008,,,,,,
00-00047RA,0018,,,,,,
00-00051RA,0018,,,,,,
00-00052RA,0029,,,,,,
00-00054RA,0028,,,,,,
00-00055RA,0023,,,,,,
00-00056RA,0006,,,,,,
00-00057RA,0008,,,,,,
00-00058RA,0005,,,,,,
00-00059RA,0005,,,,,,
00-00076RA,0006,,,,,,
00-00085RA,0025,,,,,,
00-00086RA,0025,,,,,,


--
Magic depends on tradition and belief. It does not welcome observation,
nor does it profit by experiment. On the other hand, science is based
on experience; it is open to correction by observation and experiment.
Feb 9 '06 #7

electrixnow wrote:
I have changed the code and it still blows up at 182 lines
I found that if I comment out the two string lines noted that it runs
to 19000 + lines. in*****@gmail.com suggested I was pushing it with
the array size but it works fine. I the array is full with no error
after the
while statement.

Any clue?


Still unrecoverable code :D.
Using Daniels suggestions and your update on the format, here is a
nicer version:

#include <iostream>
#include <string>
#include <fstream>
#include <sstream>
#include <map>

using namespace std;

int main()
{
ifstream ff( "test.dat" );
string document, edition, rest;

map<string,string> documents;

while( getline( ff, document, ',' )
&& getline( ff, edition, ',' )
&& getline( ff, rest ))
{
cout << document << " " << edition << endl;
documents.insert(make_pair(document, edition ));
}
}

Feb 9 '06 #8
I found the problem. Down in the file at the line it blows up at looks
like this.

083256,,,,,,,

I made that line up, but it has no data after the delimiter comma.

also I found that if I put at least 2 new lines in after the last data
line
it also blows up.

I am thinking of a way to fix.

Here is my real program I am working on, disreguard the old one.
-----------

#include <fstream>
#include <iostream>
#include <string>
#include <vector>
#include <ostream>
#define MOVEX_QUERY "C:\\DWG_DATA\\DOCUMENTS_MOVEX.dat"
#define CONTROL_LIST "C:\\DWG_DATA\\DOCUMENTS_LIST.txt"
#define REQUEST_LIST "C:\\DWG_DATA\\REQUEST_LIST.txt"

using namespace std;

typedef vector<string> stringvec;

void upper_case(string in, stringvec &out) {
// Erase all entries from the vector
out.swap(stringvec());
int len = in.length();
for (int a=0; a<len; ++a)
in[a] = toupper(in[a]);
out.push_back(in);
}

int main()
{
char * document;
char * edition;
char input_line[31];
char * next_token1;
int i=0;
ifstream inf(MOVEX_QUERY);
ifstream inf2(CONTROL_LIST);
ofstream outf(REQUEST_LIST);
if (inf)
{
while ((inf.getline(input_line,30)) != NULL)
{
//while (! inf.eof()) // eof did'nt work
//inf.getline(input_line,30); // don't know why
document = strtok_s( input_line, " ,\t\n", &next_token1);
edition = strtok_s( NULL, " ,\t\n", &next_token1);
stringvec doc,edi;
upper_case(document,doc);
upper_case(edition,edi);
cout << "vector document " << doc[0] <<'\n'; // for test
cout << "vector edition " << edi[0] <<'\n'; // for test
cout << i <<'\n'; // for test
if ( doc[0] == edi[0] )
{

if (! outf)
{
cout << "File " << REQUEST_LIST;
cout << " could not be opened.";
return -1;
}
outf << doc[0]<<","<< edi[0]<< endl;
}
++i;
}
}
else
{
cout << "File " << MOVEX_QUERY;
cout << " could not be opened.";
return 1;
}
outf.close();
cout << "PROCESSING COMPLETE\n";
return 0;
}
-----------
Here is a short data test file I made. I won't work on the last line.
526104A, 526104a
526105-3, C
526106-ir ,D
526107-ap,,

Feb 9 '06 #9
Gotter FIXED
check for empty lines and missing data first!

THANKS FOR THE HELP

Feb 9 '06 #10
In article <11**********************@g14g2000cwa.googlegroups .com>,
"electrixnow" <info...@charter.net> wrote:
I found the problem. Down in the file at the line it blows up at looks
like this.

083256,,,,,,,

I made that line up, but it has no data after the delimiter comma.

also I found that if I put at least 2 new lines in after the last data
line
it also blows up.

I am thinking of a way to fix.
I gave you a way to fix, test if document and edition is NULL before
trying to load them in a string.
Here is my real program I am working on, disreguard the old one.
-----------

#include <fstream>
#include <iostream>
#include <string>
#include <vector>
#include <ostream>
#define MOVEX_QUERY "C:\\DWG_DATA\\DOCUMENTS_MOVEX.dat"
#define CONTROL_LIST "C:\\DWG_DATA\\DOCUMENTS_LIST.txt"
#define REQUEST_LIST "C:\\DWG_DATA\\REQUEST_LIST.txt"

using namespace std;

typedef vector<string> stringvec;

void upper_case(string in, stringvec &out) {
// Erase all entries from the vector
out.swap(stringvec());
The above shouldn't work, swap takes a non-const reference, and you are
sending it a temporary. Why not just out.clear()?
int len = in.length();
for (int a=0; a<len; ++a)
in[a] = toupper(in[a]);
out.push_back(in);
}

int main()
{
char * document;
char * edition;
char input_line[31];
char * next_token1;
What is the above for?
int i=0;
ifstream inf(MOVEX_QUERY);
ifstream inf2(CONTROL_LIST);
ofstream outf(REQUEST_LIST);
if (inf)
{
while ((inf.getline(input_line,30)) != NULL)
Why the extra parens?
{
//while (! inf.eof()) // eof did'nt work
//inf.getline(input_line,30); // don't know why
document = strtok_s( input_line, " ,\t\n", &next_token1);
edition = strtok_s( NULL, " ,\t\n", &next_token1);
stringvec doc,edi;
Don't use a stringvec here. Just change your upper_case function to
output a string or modify the cstring in place.
upper_case(document,doc);
upper_case(edition,edi);
cout << "vector document " << doc[0] <<'\n'; // for test
cout << "vector edition " << edi[0] <<'\n'; // for test
cout << i <<'\n'; // for test
if ( doc[0] == edi[0] )
{

if (! outf)
{
cout << "File " << REQUEST_LIST;
cout << " could not be opened.";
return -1;
}
outf << doc[0]<<","<< edi[0]<< endl;
}
++i;
}
}
else
{
cout << "File " << MOVEX_QUERY;
cout << " could not be opened.";
return 1;
}
outf.close();
cout << "PROCESSING COMPLETE\n";
return 0;
}
-----------
Here is a short data test file I made. I won't work on the last line.
526104A, 526104a
526105-3, C
526106-ir ,D
526107-ap,,


Below is my version of your program. Look it over carefully, and ask
questions about *any* line you don't understand.

#include <string>
#include <iostream>
#include <fstream>

using namespace std;

const char* const movex_query = "movex.dat";
const char* const request_list = "request_list.txt";

// strips whitespace off front and back of string,
// and converts string to uppercase.
void clean( string& str )
{
const char* const whitespace = " \t";
str.erase( 0, str.find_first_not_of( whitespace ) );
// strips whitespace off front

// strip whitespace off back
string::size_type pos = str.find_last_not_of( whitespace );
if ( pos != string::npos )
str.erase( pos + 1 );

// convert to uppercase
for ( int i = 0; i < str.length(); ++i )
str[i] = toupper( static_cast<unsigned char>( str[i] ) );
}

int main()
{
ifstream inf( movex_query );
ofstream out( request_list );
if ( inf && out ) {
int lines_processed = 0;
string document;
string edition;
// the below will break if there is a line with no commas,
// should I guard against that?
while ( getline( inf, document, ',' ) && getline( inf, edition ) )
{
clean( document );
try { edition.erase( edition.find( ',' ) ); } catch (...) { }
// above is for lines with extra commas: strips garbage
clean( edition );
if ( document == "" || edition == "" )
cout << "Bad record: " << document << ", "
<< edition << '\n';
else if ( document == edition ) {
out << document << ", " << edition << '\n';
}
++lines_processed;
}
cout << "Total lines processed: " << lines_processed
<< "\nProcessing complete!\n";
}
else {
// below is probably more fancy than necessary,
// but the output looks good.
cout << "Could not open file" << ( ( !inf && !out ) ? "s" : "" )
<< ": ";
if ( !inf )
cout << movex_query << ( ( !out ) ? ", and " : "" );
if ( !out )
cout << request_list;
cout << '\n';
}
}
--
Magic depends on tradition and belief. It does not welcome observation,
nor does it profit by experiment. On the other hand, science is based
on experience; it is open to correction by observation and experiment.
Feb 9 '06 #11

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

31
by: lawrence | last post by:
I'm not sure how this is normally done, on a large site, perhaps one running Phorum. Occassionally a thread will have hundreds of entries, perhaps a meg or two worth of data. You won't necessarily...
5
by: Eddie | last post by:
I have a MySQL-server running Innodb. We have installed ~ 2GB of memory in the server. In spite of this MySQL keeps crashing due to out-of-memory errors. The server is a dual xeon i686 running...
6
by: Ganesan selvaraj | last post by:
I using C# .net. i want to split the text files based of the some condition. my source text file size may be 4 kb to 4 gb. some time when i split the i got the "out of memory exception. when i...
7
by: Dan Nilsen | last post by:
Hi! I'm writing a small piece of software that basically runs on an embedded system with a Power-PC cpu. This runs on a stripped down version of Linux - Busybox. As I'm writing a piece of...
11
by: skumar434 | last post by:
Hi everybody, I am faceing problem while assigning the memory dynamically to a array of structures . Suppose I have a structure typedef struct hom_id{ int32_t nod_de; int32_t hom_id;
4
by: lawrence k | last post by:
I've a jpeg image that is 514k, which doesn't strike me as very large. Yet I'm running out of error when I try to resize it: Fatal error: Allowed memory size of 20971520 bytes exhausted (tried to...
2
by: Ilkka | last post by:
I have created an C++ application with Windows Forms, ADO and SQL server 2005. Now I need to change something and started debugging the code. Then suddenly I receive an error. "An unhandled...
18
by: MajorSetback | last post by:
I am using the Redhat version of Linux and GNU C++. It is not clear to me whether this is a Linux issue or a C++ issue. I do not have this problem running the same program on Windows but...
9
by: Bruno Barberi Gnecco | last post by:
I'm using PHP to run a CLI application. It's a script run by cron that parses some HTML files (with DOM XML), and I ended up using PHP to integrate with the rest of the code that already runs the...
27
by: George2 | last post by:
Hello everyone, Should I delete memory pointed by pointer a if there is bad_alloc when allocating memory in memory pointed by pointer b? I am not sure whether there will be memory leak if I do...
1
isladogs
by: isladogs | last post by:
The next online meeting of the Access Europe User Group will be on Wednesday 6 Dec 2023 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM). In this month's session, Mike...
0
by: veera ravala | last post by:
ServiceNow is a powerful cloud-based platform that offers a wide range of services to help organizations manage their workflows, operations, and IT services more efficiently. At its core, ServiceNow...
0
by: VivesProcSPL | last post by:
Obviously, one of the original purposes of SQL is to make data query processing easy. The language uses many English-like terms and syntax in an effort to make it easy to learn, particularly for...
0
by: jianzs | last post by:
Introduction Cloud-native applications are conventionally identified as those designed and nurtured on cloud infrastructure. Such applications, rooted in cloud technologies, skillfully benefit from...
0
by: mar23 | last post by:
Here's the situation. I have a form called frmDiceInventory with subform called subfrmDice. The subform's control source is linked to a query called qryDiceInventory. I've been trying to pick up the...
0
by: abbasky | last post by:
### Vandf component communication method one: data sharing ​ Vandf components can achieve data exchange through data sharing, state sharing, events, and other methods. Vandf's data exchange method...
0
by: stefan129 | last post by:
Hey forum members, I'm exploring options for SSL certificates for multiple domains. Has anyone had experience with multi-domain SSL certificates? Any recommendations on reliable providers or specific...
0
Git
by: egorbl4 | last post by:
Скачал я git, хотел начать настройку, а там вылезло вот это Что это? Что мне с этим делать? ...
1
by: davi5007 | last post by:
Hi, Basically, I am trying to automate a field named TraceabilityNo into a web page from an access form. I've got the serial held in the variable strSearchString. How can I get this into the...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.