|
It seems perfectly reasonable thing to want to try to me too.
|
|
|
|
|
Don't you think that you will be able to access the file system (since the client app can play media files) and even upload them to a server in the background without the user even knowing about it?
|
|
|
|
|
Wrong:
1) The application can access the filesystem anyway. If he wanted to write a trojan (as you desribe it), he wouldn't need to make a remote procedure call, the app could just upload files determined by algorithm to the server. If the user didn't have a firewall, they would never know. Every application on your PC has this potential.
2) He never mentioned uploading: just calling client player functionality from a webserver. Whether the user wants this or not is another thing: there are risks of other people starting the player on the local machine remotely, but that is an issue for the OP to work on.
This is obviously either a student or home project by someone trying who wants to try something interesting.
|
|
|
|
|
Yes you can do this, but not from ASP.NET directly. With ASP.NET the web server is exactly that: a server that takes requests from the client so the client must initiate communication, this is the opposite of what you want to achieve. You have two basic courses of action
1) Make the client poll the server periodically for actions it must perform. This has the advantage of not needing to open up any ports or other firewall settings, but has the disadvantage that actions are queued until polled, so there is a time delay. You could write a custom .HttpHandler[^] to take process Http posts requests which get the instruction to be processed by the client. The handler is registered on the web server it and you call it directly from your VB app.
2) Allow your application to take RPC (remote procedure calls): The client registers itself with the website and acts as a server, the "Web Server" then becomes a client: it calls a method on the Player app remotely from the asp.net interface. The main disadvantage of this is that you open up the client as a server, and users may not want this. The easiest way is to use WCF: you include a WCF service with your Player that calls the player functionality. The Web Server has a set of proxy classes (easy to generate) that call the service from the web-page.
|
|
|
|
|
Thank you for the reply Keith,
I will look into your suggestions.
Yes this is a hobby project.
The background for the project was when I used the Player at a party.
My friends asked me if I could make a "live" remote control for it on a web page, that
they could reach with their phones, from the coutch.
Software was running on a laptop connected to a Plasma TV, out of reach from the coutch.
What Shameel talks about is not my intention. Is it not possible to solve this challenge without being
a hack?
I can see now that this might not be run on internet but on WLAN for safety, then its just to log on the
local IP e.g. 10.0.0.3 and voila, the player on your phone.
Or I could buy a pc remote from Ebay... But then I wold not learn this chapter in .net.
Best Regards
P.E.Skjold
Electronics engineer.
vb.net hobby programer since 2009.
Arduino hobby programer since 2009.
|
|
|
|
|
per78 wrote: Is it not possible to solve this challenge without being a hack?
It's not really a hack. Shameel's problem is that you could theoretically use the mechanism to hack other people's systems using your player as a means of communication. As I said, any application is capable of doing this without communication from the web server at all. Pretending for one moment your intent is malicious, all the remote functionality would give you is control over what the "trojan" player does on the client machine.
Extending functionality pretty much always increases risk of one form or another, you need to work to a level you think is right/ applicable. The real risk is that others will use your software to get access to your system somehow, but good design will reduce this risk right down.
If this Player is just for you and your friends you don't need to worry unduly about external hack attempts, especially if the site is hosted, and communicates, on a local network. In this case I'd suggest a basic web service on the Player side that has methods for each function you want to access remotely.
|
|
|
|
|
Hello
I know you can check who owns a particular domain via whois (if it's not a private registration) - but what about history of domain ownership?
Thanks
dev
|
|
|
|
|
The only source I am aware of is DomainTools.com. Tracking history is a matter of making reqular queries and storing the results, which takes database space. In other words, they offer this as a premium, paid membership only service.
I don't know of any free sources for this information.
|
|
|
|
|
Hi,
I need a DB2 provider for .NET and then please suggest how can i access the DB2 physical file in db2 stored procedure.
Example:
physical file CUSTMAST in Db2.
Guhananth.S
|
|
|
|
|
how to add dotfuscated output to web setup project in vs2008
|
|
|
|
|
I have a class file called MyDropDownList.vb which extends the asp.net DropDownList control in App_Code folder.
Public Class MyDropDownList
Inherits System.Web.UI.WebControls.DropDownList
' my codes
End Class
How can I register MyDropDownList in web.config and use it in my pages?
Thanks,
modified on Friday, August 26, 2011 2:07 AM
|
|
|
|
|
You can register user control either in web.config file or in the web page where you want to use the control.
To register in web.config
<configuration>
<system.web>
<pages>
<controls>
<add tagPrefix="prefix" src="path of the control" tagName="tag name"/>
</controls>
</pages>
</system.web>
</configuration>
To register in page at this line at the start of the page:
<%@ Register TagPrefix="prefix" src="path of the control" TagName="tag name"/>
Hope this helps.
All the best.
I quit being afraid when my first venture failed and the sky didn't fall down.
|
|
|
|
|
|
Hi Pravin, thanks for the reply but it doesn't work. The error message is the app_code is a special directory. Now i move the file to controls folder but the it is still in issue.
Here is my web.config setting
<add tagPrefix="sastra" tagName="MyDropDownList" src="~/controls/MyDropDownList.vb" />
and here is the error message:
Parser Error
Description: An error occurred during the parsing of a resource required to service this request. Please review the following specific parse error details and modify your source file appropriately.
Parser Error Message: The file 'src' is not a valid here because it doesn't expose a type.
Source Error:
[No relevant source lines]
Source File: none Line: 0
Version Information: Microsoft .NET Framework Version:2.0.50727.4961; ASP.NET Version:2.0.50727.4955
|
|
|
|
|
I am working in visual studio 2010 I have a tab container with five tabs on one of the tabs i have a table in a repeater. I need to be able to insert a record. The problem is when the page loads the table does not display due to no data. I need a blank table to enter the data. Then click a button and add another table and another and so on. This takes place be fore the insert. Is there a better way to accomplish this. I am not seeing allot on inserting with repeater. I need to add multiple customers before insert. Any suggestions would be greatly appreciated. I need to have a layout in table form a grid will not work. Thanks in advance
|
|
|
|
|
Generally you would use the footer template to add controls with which to insert records into your data source. This will place your insert at the bottom of the layout, use the header template if you want it the top, and be visible regardless of whether data is present.
No comment
|
|
|
|
|
I placed the table in the footer template still nothing showing to add record.
|
|
|
|
|
Make sure to add an empty row to your datasource before binding. There needs to be something to trigger the control to use the templates.
No comment
|
|
|
|
|
When I load the tab container there is no connection to the datasource. I need to start with the insert there are no records to bring back. Would that make a difference? In the repeater I have about table with about 30 fields and a few dropdowns. Could you post a small sample. I have a repeater to view the records already entered. I really like the way this repeater works. Just not seeing much in the way of examples starting with no records and inserting.
|
|
|
|
|
I'll honestly try putting an example together but I have many other duties so it may take me a day or two.
No comment
|
|
|
|
|
I would greatly appreciate when you get time.
|
|
|
|
|
|
hey i have a table under the repeater like shown below in the code. Now my problem is there showing the empty rows too along with the data from that table value "TotalAmount". So i am wondering if I could be able to put the condition under that table. some thing like if value equals null, delete the table cell or else show the table cell kind of thing. Is there any way I can do this?
<asp:Repeater ID="rptTotAmount" runat="server">
<ItemTemplate>
<div style="page-break-after:always;">
<asp:Table ID="tblItemListt" runat="server" Font-Size="8%">
<asp:TableRow>
<asp:TableCell HorizontalAlign="Right"><%# DataBinder.Eval(Container.DataItem, "TotalAmount", "Total: {0:c}")%></asp:TableCell>
</asp:TableRow>
</asp:Table>
</div>
</ItemTemplate>
</asp:Repeater>
suchita
|
|
|
|
|
I'm not sure if I understand. You have a table with one cell in each row and want to hide the cell when it is empty? In that case, why not just remove the empty rows from the datasource before binding?
I know the language. I've read a book. - _Madmatt
"The OP herself was not sure about her question"
"The OP is from India and I know what she meant."
|
|
|
|
|
its not the database which has empty data... i got these problems when i try to join multiple tables...
suchita
|
|
|
|