Windows Vista Tips

Windows Vista Tips > Newsgroups > ActiveSync > CeRapiInvoke() marks dll system attribute ... can't delete

Reply
Thread Tools Display Modes

CeRapiInvoke() marks dll system attribute ... can't delete

 
 
dan h
Guest
Posts: n/a

 
      09-01-2006
Hi all,

My goal is to copy a Windows Mobile DLL to the device, call a function in
it, then delete the DLL. Everything works up til I try to delete the DLL.
It appears there is no way to remotely delete a DLL after a function is
remotely invoked.

My desktop program copies a temporary device DLL to the device's \windows
dir, then invokes a function in it via CeRapiInvoke() to get some info. The
Invoke call causes the "System" attribute of the DLL to be automagically set
on the device.

My desktop app isn't privileged so can't clear the System attribute via
CeSetFileAttributes(), and CeDeleteFile() won't delete a file with the System
attribute set.

Does anyway know a way around this? I've been digging for a bit to no
avail. This is happening on a Windows Mobile 5.0 phone and Windows 2003 PPC.


I'm tempted to attempt having the dll reset its own attribute after being
loaded...

Thanks,
Dan
 
Reply With Quote
 
 
 
 
Juggs Ravalia \(MS\)
Guest
Posts: n/a

 
      09-02-2006
Dan ---
This is an interesting issue you are hitting. So let me ask you a couple of
questions
1) After copying down your dll to the cradled device, is it's attribute
already set to System or is it after the CeRapiInvoke call?
2) May be the security restrictions are in place because the dll is in
\Windows directory - try placing it at the root of the directory
3) After the CeRapiInvoke Call returns - can you update the dll again with
the copy you have on the desktop?

I am still shocked how the System flags is being set ---

Let me know your findings
Juggs Ravalia [MSFT]


This posting is provided "AS IS" with no warranties, and confers no rights.

"dan h" <dan > wrote in message
news:4993772C-494C-41F6-BC4C-...
> Hi all,
>
> My goal is to copy a Windows Mobile DLL to the device, call a function in
> it, then delete the DLL. Everything works up til I try to delete the DLL.
> It appears there is no way to remotely delete a DLL after a function is
> remotely invoked.
>
> My desktop program copies a temporary device DLL to the device's \windows
> dir, then invokes a function in it via CeRapiInvoke() to get some info.
> The
> Invoke call causes the "System" attribute of the DLL to be automagically
> set
> on the device.
>
> My desktop app isn't privileged so can't clear the System attribute via
> CeSetFileAttributes(), and CeDeleteFile() won't delete a file with the
> System
> attribute set.
>
> Does anyway know a way around this? I've been digging for a bit to no
> avail. This is happening on a Windows Mobile 5.0 phone and Windows 2003
> PPC.
>
>
> I'm tempted to attempt having the dll reset its own attribute after being
> loaded...
>
> Thanks,
> Dan



 
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Can't delete printer from system swalker Windows Vista Performance 1 03-02-2008 09:44 PM
Help! Access Denied Even To The System Owner... AAD213 Windows Vista Administration 16 12-04-2007 12:02 AM
NVIDIA GeForece 6800 and Vista w2m Windows Vista Hardware 19 06-12-2007 12:34 AM
Can I repair parental controls service? Paul Spoerry Windows Vista Installation 3 06-04-2007 01:25 PM
What is up with Vista's file system? Stan Shankman Windows Vista File Management 7 08-15-2006 08:59 AM



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59