Assume UAC is ON. This does not create a problem with it off.
I have a c# app with a backup/restore functionality and using sql server 2005 express.
code to get the backupPath is used for both backup and restore and the name for all purposes will be backup.dat
to generate backup path
string path = Environment.GetFolderPath(Environment.SpecialFolder.CommonApplicationData);
path = Path.Combine(path, "CompName");
if(!Directory.Exists(path))
Directory.CreateDirectory(path);
path = Path.Combine(path, "AppName");
if(!Directory.Exists(path))
Directory.CreateDirectory(path);
return path;
On backup the db generates backup.dat in *C:\ProgramData\CompName\AppName* and it has no difficulty zipping from that location to a target directory of the users choice.
On restore it has no problem getting the archived directory or the file but when it decompresses it goes to *C:\Users\UserName\AppData\Local\VirtualStore\ProgramData\CompName\AppName*
I need to know why my decompressed file is going to a virtual store so I can restore the db because from what I understand of programming for vista sql server should not / won't be able to access that virtual store path.
edit: failed to provide with decompression - I don't think this is the problem but here it is.
private void DecompressArchiveFile(string compressedFile, string backupPath)
{
GZipStream gzip = new GZipStream(new FileStream(compressedFile, FileMode.Open, FileAccess.Read, FileShare.None), CompressionMode.Decompress, false);
FileStream fs = new FileStream(backupPath, FileMode.Create, FileAccess.Write, FileShare.None);
byte[] buffer = new byte[10000];
int count = -1;
while (count != 0)
{
count = gzip.Read(buffer, 0, 10000);
fs.Write(buffer, 0, count);
}
gzip.Close();
fs.Close();
}
Thanks for any and all help -TK